//  home   //  advanced search   //  news   //  categories   //  sql build chart   //  downloads   //  statistics
 ASP FAQ 
Home
ASP FAQ Tutorials

   8000XXXX Errors
   Alerts
   ASP.NET 2.0
   Classic ASP 1.0
      COM / ActiveX Components
      Forms
      General Topics
      Date/Time Routines
      Email Scripts & Info
      Files/Directories & FSO
   Databases
   General Concepts
   Search Engine Optimization (SEO)

Contact Us
Site Map

Search

Web
aspfaq.com
tutorials.aspfaq.com
classicasp.aspfaq.com

ASP FAQ Tutorials :: Classic ASP 1.0 :: COM / ActiveX Components :: DLL: How do I avoid 'Permission Denied' when re-compiling?


DLL: How do I avoid 'Permission Denied' when re-compiling?

Use this batch file to release IIS' lock on your DLL: 
 
net stop iisadmin /y 
net start w3svc
 
The disclaimer of course, if you're worried about stopping your web site temporarily: don't develop DLLs on production machines, and if you need to deploy a new version, use a different ProgID. 
 
You may also find the need to use KILL.EXE, if iisadmin refuses to be shut down. KILL.EXE is found in the Windows Server 2003 Resource Kit. As long as the .EXE is in your system's path, you can modify the above script as follows: 
 
net stop iisadmin /y 
kill iisadmin 
net start w3svc
 
(You may also need to start other required services such as FTP and/or SMTP.) 
 
In Windows 2000 and above, you can use a much faster process by issuing the following command (again, at a command prompt or in a batch file): 
 
iisreset
 
You can also issue stop and start commands independently: 
 
iisreset /stop 
iisreset /start
 
If your object is hosted in MTS (or an application running in its own memory space), you should be able to just unload that application / package. Similarly, for objects hosted in COM+, shutting down the application from Component Services should unlock any holds IIS has on your DLL. 
 
If you are developing your ASP files using Visual InterDev, then IntelliSense may be doing you a disservice. Since this feature actually hooks into your custom COM objects (once you've created them using their ProgID in a createobject() statement), this places a lock on the DLL similar to the one IIS places on it. So if you are editing an ASP file which calls the DLL in question, you can recompile without rebooting by simply closing the ASP file.

Related Articles

Can I code ISAPI filters / extensions with Visual Basic?
How do I detect browsers without components?
How do I determine if a COM object is installed?
How do I determine if a VBScript-based object exists?
How do I generate PDF files from ASP?
How do I generate RTF documents from ASP?
How do I handle MD5 from ASP?
How do I pass server-side values to a client-side ActiveX control?
Should I close my objects and/or set them to nothing?
Should I store objects in session/application scope?
Should I use CreateObject or Server.CreateObject?
When does ASP release COM objects?
Where can I get a shopping cart for my web site?
Where can I get an updated version of browscap.ini?
Why do I get 'Server.CreateObject Access Error'?
Why do I get 8000401A errors?
Why do I get 80040111 errors?
Why do I get 80040112 / 8007045A errors?
Why do I get 800401F3 / 800A01AD errors?
Why do I get 80040460 errors?
Why do I get 80040514 errors?
Why do I get 8007000E errors?
Why do I get 8007007E / 8007007F errors?
Why do I get 80072EE2 errors?
Why do I get 80072EE5 errors?
Why do I get 800A0030 errors?
Why do I get 800A005B errors?
Why do I get 800A9C68 errors?
Why do I get 800C0007 errors?
Why does Browscap give me 'unknown' or tell me IE is Netscape?

 

 


Created: 7/9/2000 | Last Updated: 6/16/2005 | broken links | helpful | not helpful | statistics
© Copyright 2006, UBR, Inc. All Rights Reserved. (245)

 

Copyright 1999-2006, All rights reserved.
Finding content
Finding content.  An error has occured...