Question:
I have been trying to change settings for the IIS server in order that I can set the flag to allow an out-of-process Active X EXE Server to be used from within an ASP page. It seems that one can call an in-process DLL server without a problem, but an error occurs when I try to call the EXE. How does one call an Active X EXE (out of process) from within ASP, and set the flags for the metabase?
The sample code such as:
Dim ComputerObjDim MaxBWSet ComputerObj = GetObject("IIS://LocalHost")MaxBW = ComputerObj.MaxBandwidth
and the code such as
Set VSvrObj = GetObject("IIS://LocalHost/W3SVC") VSvrObj.AspAllowOutOfProcComponents = True
fails to execute.
Answer:
There are issues to be concerned with when using ActiveX
EXEs on a Web Server. These concerns boil down
to security and performance. If you must use an ActiveX EXE,
then you need to change the metabase settings to allow this,
as you stated. The easiest method is to do it from the command
lineusing adsutil:
C:WINNTsystem32inetsrvadminsamples>adsutil set
w3svc/1/AspAllowOutOfProcComponents True
This works for IIS 4.0. To manipulate the
setting in IIS 3.0, you just need to change the registry
value for AllowOutOfProcCmpnts to 1 in the following registry key:
HKEY_LOCAL_MACHINESYSTEM CurrentControlSet Services W3SVC ASP Parameters
Once you have made this change you will need to stop
and restart your IIS service in order for the change
to take effect.
The last thing to mention is that you need the proper rights
to make this change. If you do not have the administrative rights you may get an invalid syntax message.