PRB: Server.CreateObject Fails for Local Servers(EXEs)
ID: Q156675
|
The information in this article applies to:
-
Active Server Pages
-
Microsoft Internet Information Server versions 4.0, 5.0
SYMPTOMS
When you call Server.CreateObject on a local server, the following error appears:
Initialization of dynamic-link library C:\Winnt35\System\User32.dll
failed. The process is terminating abnormally.
As a result, the local server is not launched.
CAUSE
This error occurs because Microsoft Internet Information Server (IIS) attempts to
launch the local server using the IUSR_computername(Internet Guest)
account. The IUSR_computername account does not have access to the window
station and desktop, so the User32.dll file fails to load. This problem
does not occur if you launch an In-Proc(DLL) server because it runs in the
same process space as IIS, which has already loaded User32.dll at startup.
RESOLUTION
In order to launch servers from Internet Information Server, you must complete the following
steps. Step 1 is necessary for both In-Proc(DLL) and Local(EXE) servers,
while step 2 is necessary only for local servers.
- Set Default Launch and Activation permissions for IUSR_computername. The
following steps give the Internet Guest account permission to access
and launch applications:
- Run Dcomcnfg.exe (located in the System32 subdirectory.)
- Select the Default Security tab.
- Click the Edit Default button for Default Access Permissions.
- If the computername\IUSR_computername account is not listed, click
Add to add this account.
- Click Allow Access for the computername\IUSR_computername account.
- Repeat this process for the Default Launch Permissions group,
specifying Allow Launch for the computername\IUSR_computername
account.
- Configure the RunAs registry value for the specific local server. The
steps outlined below specify a specific account that is used to launch a
local server. It may be a good idea to create a special local account on
your server for this purpose. Make sure that this account has permission
to launch and access the desired local server:
- Run Dcomcnfg.exe.
- Click the Applications tab.
- Double-click the name of the server you want to launch from Denali.
- Click the Identity tab.
- Click This User and specify the required information (User name and Password) for the account you want to use when launching the
local server.
REFERENCES
For the latest Knowledge Base articles and other support information on
Visual InterDev and Active Server Pages, see the following page on the
Microsoft Technical Support site:
http://support.microsoft.com/support/vinterdev/
Additional query words:
Keywords : kberrmsg kbASP kbCOMt kbGrpASP kbiis400 kbiis500
Version : winnt:
Platform : winnt
Issue type : kbprb