I recently experienced some woes with updating a .dll in the Microsoft Download Cache, C:\Windows\Assembly\Download, that I've finally been able to resolve. Anyway, I thought I'd share my experiences to help any of you guys who might be encountering a similar issue. Here are some details to clarify...
Problem:
I had just completed some changes to a custom library, .dll file, that gets downloaded from our website to the client's download cache directory, C:\Windows\Assembly\Download, when I discovered that an older version of the file was continurously being loaded every time I tried to access the site as a client. This continued to occur despite the fact that I'd updated our website with the most recent revision of the file. In case you're curious, our website loads that .dll file onto the client so that it can communicate with the client's laser hand-scanner, a device used to read bar-coded information into controls of our site.
Root Cause:
An older version of the .dll file is continuously being loaded every time I access the appropriate page because the file has been cached to the client's local temporary internet files folder.
Solution:
Here are the steps that I used to effectively resolve this issue:
Please note: all these actions take place on the client which happens to be using IE 7
- Open Internet Explorer and click Tools -> Internet Options
- Under the General tab, click on the Delete button located in the Browsing History section
- Click the Delete files... button located under the Temporary Internet Files section
- Click Yes to delete all temporary Internet Explorer files
- Click Close
- Click on the Settings button located in the Browsing History section
- Click on the radio button that reads Every time I visit the webpage and make certain the disk space specified is greater than the file being loaded (you can change this back to it's original settings after the client has downloaded the new file if you aren't comfortable w/ this change)
- Click OK, click OK
This action will allow a new version of the .dll file to be loaded onto the client when he/she accesses your site.
Optional:
If you also wish to clear out the Download Cache directory, C:\Windows\Assembly\Download, on the client and start over fresh, you can perform the following actions:
- Open a Visual Studio .NET Command Prompt (can be either 2003 or 2005, but I just happen to be using 2005)
- It's located under Start -> All Programs -> Microsoft Visual Studio 2005 -> Visual Studio Tools -> Visual Studio 2005 Command Prompt on my system, but could be different for yours
- Type gacutil /cdl and hit the Enter key
This action will effectively delete all existing files currently located in the Download Cache directory.