We’re running some VBScript actions in FinalBuilder to build installers with InstallShield on a 64bit machine, but because the InstallShield automation process is 32bit only, the script needs to be run using a 32bit process (such as CScript.exe), else we run into errors.
(see this info page)
Is there a way to make FinalBuilder run script actions using CScript.exe? I want to avoid having to run CScript using ‘execute program’ and a path to separate script file.
Hi Luke
FinalBuilder is still a 32bit process. In fact, compatibility with scripting is one of the main reasons we have not yet moved to 64bit. Did you try the Run Script action?
The only way to invoke CScript is via the execute program action with an external script file.
Hi Vincent,
Yes the ‘run script’ action is the one I’m using. I get this error at the script stage whenever I try to run the FB project on a 64bit machine:
Error Executing script : OnExecute
Microsoft VBScript runtime error
ActiveX component can’t create object: 'ISWiAuto16.ISWiProject\
Works fine on a 32bit machine. Example script below:
strPathToLocalIsm = [TEMP] & “” & [ISM_Name]
Set oISM = CreateObject(“ISWiAuto16.ISWiProject”)
oISM.OpenProject strPathToLocalIsm , False
sFilePathAndName = [TEMP] & “\Exported_from_ISM.txt”
oISM.ExportStrings sFilePathAndName, 0, 1033
oISM.CloseProject
The issue I believe is with the InstallShield automation interface as described in that link in my previous post. Not sure if there’s a way around it at this point other than using execute program action, so just fishing for ideas really.
Regards,
Hi Luke,
A thought I had while looking into this. Possibly try to register the Install Shield dll in question using “C:\Windows\System32\regsrv32.exe” on the 64 bit machine. Everything I have read points to the dll simply not being registered in the correct namespace.
Jason - thanks for the tip. The dll in question was actually missing (not sure why) so I copied it over from the installation on our old server machine and registered it, working now!