Wiki Home

Com Discussion

Namespace: VB
I keep getting a "file access denied" after compiling, registering, using, and deregistering a DLL file (ie. a regular programmer development cycle). The error comes up when I try to rebuild the DLL in VFP6. I am using the DLL in an ASP file within IE5.0 and closing down IE5.0 doesn't help. Even rebooting the computer doesn't seem to wipe out this problem. Anyone got any thoughts on this ? Peter Somers

Don't you love answering your own questions |g| This answer comes via Larry Miller: "IIS caches COM objects in order to use them more efficiently the next time they are called. In order to unload it, at the CMD prompt (assuming NT because you are using IIS), type: net stop iisadmin. It is this service that locks it. This will also shut down the web servirce (also ftp and smtp)." Going to the Services option and stopping and restarting "IIS Admin Service" also achieves the same goal. Peter Somers

Under W2K c:\>iisreset accomplishes the same and restarts for you too.

For a Web app under current development, a faster -and less traumatic- solution than stopping / restarting the whole IIS is to configure the Web aplication to run in separate memory, and then unloading it each time (Right-click, Properties, Unload in the Internet Services Manager).
First step is to ensure your ASP pages belong to a IIS "application" and not just a folder under wwwroot; if this is the case select the folder in the Internet Services Manager and use the Create application button. Second step is to configure the application (also in the Properties page within the Internet Services Manager):
  • Under NT4/IIS 4 check the "Run in separate memory" option
  • Under W2K/IIS 5 you have an "Application Protection" combo box: select either "Medium (pooled)" or "High (isolated)"
  • In either case, if the application is already loaded as part as the IIS process, you need to stop and restart the Web Service and IIS Admin Service ONCE, before you can start using the "Unload" feature. -- Jose Marcenaro
  • Com Architecture
  • Create Object
  • Automation server is COM component (from VFP help)
  • Ole Public

    Advantages of using a COM component:
  • increases Maintainability by having code in one place
  • increases Scalability since an upsize to SQL server is hidden from user of object
  • increases Extensibility since other applications can use this object
  • increases Code Re Use
    Disadvantages of using a COM component:
  • increased overhead to invoke and use
  • increased memory requirements
  • harder to debug
  • harder to design
  • very extensive and up to date documentation needed when working with lot's of objects in a multi programmer environment
    Category C _ O _ M Category IIS
  • ( Topic last updated: 2000.10.26 09:02:50 AM )