Products, the Universe and Everything

The Riverblade Developer's Blog

Beth demonstrating Visual Lint at the ACCU Conference 2008  Anna taking part in a discussion panel at the European Software Conference 2007 

Welcome to our developer's blog. We hope that this forum provides an insight into us, our products and how we develop them. Please feel free to write to us if you have anything to add to any of the posts here.

Current Entries | Archives |

"We Live in Interesting Times" (or: Windows Vista: Not For Developers)
Tuesday, January 30, 2007

With the consumer release of Windows Vista happening today (and being much lower key than I expected, quite frankly) I think it is time to dust off this blog entry I drafted a couple of months ago. It pretty much sums out my take on this operating system, and why I've no time for those who waste energy bashing each new OS release (Windows XP suffered the same grumpy reception back in 2001) rather than looking ahead to see where it is likely to lead.

I consider Vista to be an interesting release.

Regardless of what we (developers) think of the features and look and feel in this (or any operating system), we aren't the people who will buy the product en-masse - that honour (or otherwise, if you prefer) falls to the so called "average consumer".

The "average consumer" probably doesn't care one bit about the fine details of whether Windows XP is "good enough" (and let's face it, it is - as was Windows 2000 before it and Windows NT before that). They are the people who actually buy things because of glossy adverts, or because it looks "new and flashy" in the store (and who will need support when it turns out to be not quite what they expected).

Developers aren't so gullible (or at least, we would like to think we aren't! ).

More importantly, "average consumers" are the people who don't look after their systems (most either don't know, don't care or both) and they are the people who own unprotected and unpatched systems crawling with spyware and adware. Even people in professional occupations fall victim to this, as our own experience can attest.

In other words, "average consumers" are the people who own the machines which have been unwittingly co-opted into botnets and are sending you spam and mounting phishing and denial-of-service attacks at the behest of the scum who seek to use unprotected computers to defraud others. It has been estimated that up to one quarter of all personal computers connected to the internet are part of a botnet.

"Average consumers" are the people at whom the changes to the user interface and security model in Vista are targeted. Although these changes will cause us developers pain (our experience bears this out already) the changes to the security model have the potential to finally start to do something about the vulnerability of new consumer systems (furthermore, the changes to the user interface offer us the opportunity to improve the usability of our own products - if we can be bothered. Many developers can't, sadly).

Although new exploits will always be discovered - and many users will ignore the resulting patches - with Vista Microsoft has raised the bar against the spammers and internet fraudsters. It will take time, but if this doesn't have an impact on the spammers I rather doubt anything will.

On that grounds above all else, I'm all for it.

Posted by Anna at 10:31 | Get Link


Running Visual Lint under Windows Vista
Saturday, January 20, 2007

In the FAQ for Visual Lint we state that "We are in the process of testing on Windows Vista, and hope to have a compatible version soon. Please contact us if you have any queries about compatibility with a particular platform."

We've been using Vista routinely now since the release of RC1 back in September, and have had the RTM version running for over a month now. As a result we now have a pretty good idea what changes we need to make to support the new platform, and those are now well underway.

The good news is that Visual Lint seems to work just fine under Vista (we've tested pretty extensively with VS2003 and VS2005), but installation is a little tricky at the moment. Although we are in the process of writing a new installer to work around the issues we've encountered, it is (unfortunately) not yet ready.

So, in the meantime, I'd like to discuss how to get current versions of Visual Lint working under Vista.

The main issue is that if you attempt to install Visual Lint on a Vista system which has Hardware DEP (Data Execution Prevention) enabled, you are likely to see the following message during installation:

Error message during installation

Attempting to register the DLL from the command line (note that it must be an admin prompt or UAC will disallow the action) will also fail:

Crash in regsvr32.dll

The crash is caused by a conflict between the Vista implementation of Hardware DEP (which is much more aggressive than that provided with WinXP) and the third party solution we use to handle licence keys and provide some level of protection against crackers. The vendor are aware of this issue but do not currently have a solution available.

Fortunately there is a workaround. In order to install the software, you can either:
  • Install using Safe Mode

  • Disable Hardware DEP on regsvr32.exe
Vista by default installs with DEP enabled on "essential Windows processes and services only", so in order to use the second method DEP must be disabled on regsvr32.exe. This can be accomplished from the "Performance Options" property sheet, accessible via System Properties:

Disabling DEP for regsvr32.exe and Visual Studio

Note however that any Visual Studio IDEs you intend to use should also have DEP disabled, as you can see in the screenshot above.

Once this has been done and the system restarted Visual Lint should install and run without issues:

Visual Lint running under Vista

If you identify any other issues with Vista, we'd be very interested to hear them.

Posted by Anna at 10:16 | Get Link


Visual Lint has been released
Thursday, January 11, 2007

We are pleased to announce that Visual Lint is now available.

This is a maintenance release, and contains no new functionality over that in We have however made a number of minor improvements and bug fixes.

The following changes are included in this build:

  • Fixed a bug in the generation of PC-Lint command lines which was preventing Visual Lint from using the PC-Lint executable if it was located in a folder path containing one or more spaces.

  • Added an "Internal Errors" category to differentiate Internal PC-Lint Errors (messages 200-299 and 1200-1299). If the analysis results parser cannot parse a message, it will also use this category.

  • When a category is edited, the ordering of the categories within the "Categories" options page is now defined automatically by severity. In consequence, the "Move Up" and "Move Down" buttons have been removed.

  • Project.lnt files can now be generated directly by Visual Lint when hosted under Visual Studio 6.0 (this option was previously only available in VS2002 onwards). Any shell environment variables found within the files or additional include folders sections of a Visual Studio 6.0 project (.dsp) file will now be expanded correctly.

  • Improved handling of relative paths within Visual Studio 6.0 projects.

  • Fixed a minor bug in the Analysis Results Display which could cause an erroneous "Invalid Pointer" error message if a file could not be opened [IMS ID 241].

  • The Analysis Status and Results Displays now check that pathnames are valid before attempting to open the corresponding file [IMS ID 241].

  • Fixed a bug in the generation of project lint analysis command lines which could cause analysis to fail under some circumstances.

  • Links in HTML reports are now generated using forward slashes rather than backslashes for compatibility with Apache [IMS ID 240].

  • Corrected the default sort order in the project analysis report template [IMS ID 243].

  • Added PC-Lint 8.00v error 1085 (Invalid definition of 'String') to the message database.
Further details can be found at

We are continuing to develop Visual Lint so if you have any suggestions or feature requests, please let us know. The next build will include support for Embedded Visual C++ 4.0, so if you are using this platform, we'd be very interested to hear from you.

Beyond that, our immediate focus is full support for Windows Vista. This requires a number of UI changes (in order to comply with the Windows Vista User Experience Guidelines) as well as a new installer (while current versions of Visual Lint will run under Windows Vista, installation on this platform is currently a little tricky for reasons which are unfortunately beyond our control *). We will of course continue to support previous platforms back to Windows 2000 SP4.

* I'll be blogging about this shortly, but in the meantime if you are experiencing difficulties installing under Windows Vista and require assistance please contact us and we'll walk you though it.

As ever, if you have any comments, questions or suggestions, please feel free to contact us. We welcome your feedback.

Posted by Anna at 11:22 | Get Link