Verifying Component Permissions

IIS 6.0

Sometimes Server.CreateObject fails with an "ASP 0177: Server.CreateObject Failed" error. This can happen even if the component works on the same computer in Microsoft Visual Basic, or by using ASP on other computers.

One reason for this behavior could be that the authenticated user does not have permission to invoke the COM object. In the simplest scenario, the authenticated user does not have access to the component's DLL or executable. In many cases, however, the component depends on other DLLs that the authenticated user does not have permission to access.

Remember that a majority of your users will be accessing the site anonymously, using the IUSR_machinename account. Although you may be tempted to grant blanket administrative privileges to this account, a better first step is to invoke the component from another tool such as Visual Basic. This preferred approach checks for permission problems, as well as verifies that the component is registered properly on the server. If the component cannot be created from Visual Basic, you are probably not dealing with a permissions problem at all.

If you believe you are dealing with a permissions problem, check permissions on the component and any dependent files, such as other DLLs. If you still are unable to track down the problem, you may need to resort to other means such as a systematic file system permissions search, or enabling Windows File and Object Auditing.