
Passing a Scripting.Dictionary to ActiveX DLL
Hopefully someone can help me out here. I have a ActiveX
DLL I wrote for my web site which takes a
Scripting.Dictionary object as an argument. This works
fine from my ASP page, but I needed to write a vbs script
to be run by cscript.exe and the same functionality yields
a Permission Denied error on my production web server, but
not my development computer. They are both supposed to be
running the same software, NT 4 Server, SP6a, and Windows
Script Host 5.1 with all security patches identified by
hfnetchk.exe. I think it may have something to do with a
setting that iislockd.exe may have changed. Does anyone
have any suggestions what to check?
Thank you in advance,
- Tyler
Below I have included sample code from my ActiveX DLL, an
ASP file, and a VBS file.
' ActiveX DLL
Public Function Test(ByVal objData as Object) As String
Dim testString as String
' Next line causes problems when called from wsh but
not asp file
testString = objData.Item("TestValue")
' Do something
End Function
' ASP File
Set objData = Server.CreateObject("Scripting.Dictionary")
objData.Item("TestValue")="Sample Data"
result=objClass.Test(objData)
' This ASP works fine on both servers
' VBS File
Set objData = CreateObject("Scripting.Dictionary")
objData.Item("TestValue")="Sample Data"
result=objClass.Test(objData)
' This works on my development computer but not my
Production Web Server