An environment has been upgraded to a later web agent from an earlier version then users get one of the following errors in their browser when they try to access a page. The specified module could not be found or just a 404 error. While these errors can be caused by many different conditions this article pertains to a specific issue that may not present itself at first glance. The normal route of upgrade is to replace all of the library and binary files that exist in the web agent directory with files from the latest version. Some users will back up specific binaries from the earlier version in the same directory which can cause this issue. This article will be specifically focusing on the ISAPIWebAgent.dll file. So if a user backs up this file by creating a copy with a name of ISAPIWebAgent5qmr8.dll, then installs the new agent, you should have two distinct files. ISAPIWebAgent.dll and ISAPIWebAgent5qmr8.dll. The problem that you will run into is with the Windows short file name. The backed up file can keep the short file name of ISAPIW~1.dll and the new file will take ISAPIW~2.dll. This can cause confusion for the web agent as it may still try and use the old dll, which may load, but give unpredictable results. If you delete the old file you will run into the errors above.
To resolve this short name issue first identify if the new ISAPIWebAgent.dll is set to ISAPIW~2.dll or even a greater number. You must then remove/rename the file that is occupying the ISAPIW~1.dll space. If you rename it, it must have a different beginning then the ISAPIWebAgent.dll file. Then run the following command:
C:\Program Files\netegrity\webagent\bin>fsutil file setshortname ISAPIWebAgent.dll ISAPIW~1.dll
You can then check that the file has the correct short name by using the following command:
C:\Program Files\netegrity\webagent\bin>dir ISAPIW~1.dll
It should show that the file is ISAPIWebAgent.dll