cancel
Showing results for 
Search instead for 
Did you mean: 

ActiveX component can't create object: 'Symantec.ProtectorAuto' on Windows Server 2008

marcogsp
Level 6

Environment:

Windows Server 2008 x64 and Exchange Server 2007 SP1

BESR version 8.5.1

 

My vbs script for creating and running a backup job is failing with the following error:

 

Microsoft VBScript runtime error: ActiveX component can't create object: 'Symantec.ProtectorAuto'

 

The script is the same script that I run on my x32  Server 2003 and XP boxes, with only the machine name and backup file locations changed.  I can run the script from a x32 box, and it sucessfully passes the parameters for the backup job to the x64 server via the BESR Agent. The backup job then completes successfully on the x64 server.

 

Ideally, I would like to  invoke the script fom the x64 box, but I can get by with invoking from a x32 box for now.  My guess is that the 32 bit automation libraries are not quite compatible with Server 2008 x64.  I have re-registered the libraries in the \Program Files(x86)\Common Files\Symantec Shared\VProRecover, as well as re-installed BESR 8.5.1

 

The original BU script is too large to include here but the following sample produces the same successes and failures outlined above.

 

 

Dim sServerMame, sVolumesArray
Dim oV2iAuto, oTempVolume

sServerName = "mx4"

Set oV2iAuto = CreateObject("Symantec.ProtectorAuto")

Call oV2iAuto.Connect(sServerName)

'Enumerate the Mounted Volumes

On Error Resume Next

sVolumesArray=""

For Each oTempVolume In oV2iAuto.Volumes(false)

 

WScript.Echo oTempVolume.MountPoint

Next

On Error GoTo 0



Set oTempVolume = Nothing
Set oV2iAuto = Nothing

 

 Is anyone else experiencing this issue or have sucessfully run a similar script from their Server 2008 x64 boxes?  If not, then perhaps the automation libraries can be targeted for update in a future maintenance release.

 

Marco

 

 

1 ACCEPTED SOLUTION

Accepted Solutions

marcogsp
Level 6

The solution is located at:

 

 

http://seer.entsupport.symantec.com/docs/293928.htm

 

I found this while searching for info on another ActiveX error.  It seems that the 64 bit versions of  Cscript.exe and Wscript.exe are not compatible with VProAuto.dll.  If the 32 bit versions located in the C:\Windows\SysWOW64\ folder are used, the script executes without error.

 

 

View solution in original post

4 REPLIES 4

marcogsp
Level 6

Edited to correct Dim sServerMame to Dim sServerName

 

Option Explicit is not used in this either sample, so no error would have been generated.  I'm still experiencing the same issue and still using the same work around.


 

 

Dim sServerName, sVolumesArray
Dim oV2iAuto, oTempVolume

sServerName = "mx4"

Set oV2iAuto = CreateObject("Symantec.ProtectorAuto")

Call oV2iAuto.Connect(sServerName)

'Enumerate the Mounted Volumes

On Error Resume Next

sVolumesArray=""

For Each oTempVolume In oV2iAuto.Volumes(false)

 

WScript.Echo oTempVolume.MountPoint

Next

On Error GoTo 0



Set oTempVolume = Nothing
Set oV2iAuto = Nothing

 

 


marcogsp
Level 6

The solution is located at:

 

 

http://seer.entsupport.symantec.com/docs/293928.htm

 

I found this while searching for info on another ActiveX error.  It seems that the 64 bit versions of  Cscript.exe and Wscript.exe are not compatible with VProAuto.dll.  If the 32 bit versions located in the C:\Windows\SysWOW64\ folder are used, the script executes without error.

 

 

Jokkster
Not applicable

Hi,

Am a newbie to scripting. I have a similar problem and would like to know how you specify in the script that the 64-bit machine should look in the C:\windows\SysWOW64\cscript.exe?

My script executes on a 32-bit machine but needs to interact with a DC that is on a 64-bit machine to vreate an object and there is where it fails. Would this be the solution?

Thanks for any help.

//Jokkster
 

marcogsp
Level 6
As long as the Backup Exec System Recovery service (BESR agent) is installed properly on the 64 bit unit, invoking the script from a 32 bit unit shouldn't be an issue.  You only need to specify the cscript.exe location when invoking the script at the 64 bit machine:.  This can be done in a batch file containing a command similar to:.  "C:\Windows\SysWOW64\ cscript.exe" BESR-Image-job.vbs
Try this with the sample scipt above, substituting your machine name of course, to verify that the 32 bit version of Cscript.exe is working properly on the 64 bit machine.

On the 32 bit machine, verify that the Backup Exec System Recovery service is starting up with an account with network privledges.  This will be needed in order for the BESR agent on the 32 bit machine to contact the agent on the 64 bit machine.  The Local System account does not have any network privledges by design. 

Best of Luck