When you run the ASP, the .dll is loaded into memory, and you cannot change it till that is no longer true.
If you stop the internet server you should be able to overwrite the .dll
If you run the application from within the IDE you won't have this problem.
You can start the component without necessarily running the browser by setting Project|<Prj-name>Properties|Debugging: Wait for component to be created.
This way the dll will start under the auspices of the IDE, but an independent browser can runn it. You can put break points in the IDE at any time, and the next call to that location with the BP will stop the IDE.
When you stop the IDE, the component can again be overwritten.