View Single Post
  #1  
Old 06-25-2012, 03:05 PM
deramor deramor is online now
Registered User
 
Join Date: 05-11-2011
Posts: 27
Unable to create ActiveX object

Hello-

I am using VBP 8.0 x64 version. I am trying to get a previously working build to work with this version. The previous build was working in 32-bit VBP 8.0.

I am trying to run a VBScript step. I try to create an Installshield object:
Set objInst = CreateObject("ISWiAuto16.ISWiProject")
I get the following error:
(ActiveX component can't create object: 'ISWiAuto16.ISWiProject')

I know little about COM however I do know that the type is registered under CLSID as well as its GUID. I was doing some Google searches and came across this blog entry:
http://blogs.msdn.com/b/helloworld/a...t-machine.aspx

This article states that for a 64-bit pc, you need to run your script which contains 32-bit objects with the 32-bit cscript. This follows all other Microsoft programming models since they do not allow mixing different bitness in the same process. I know that Installshield is a 32-bit native program and VBP is a native 64-bit application. They would need to be in separate processes. How does VPB launch a script? Does it take the provided text from the editor and generate its own temp vbs file and then launch it? I believe if this is the case, on a 64-bit system with a 64-bit native program, it will use the 64-bit native cscript.exe. Likely getting the registered app to run that file extension (which is the 64-bit cscript on Win7 64-bit). This will not work with 32-bit objects which are the majority of the world. Even all of the Visual Studios currently released are 32-bit processes. Is there a way to force the script to run the 32-bit version of the cscript.exe?
Reply With Quote