我正在使用VMWare Tasks库来尝试并自动化一些VM以进行测试。但是,当我的C#程序(32位)尝试加载vix.dll时,它似乎失败了。从VixCOM目录运行vmrun.exe是可行的。
vmrun.exe
在procmon中,我可以看到vmrun.exe尝试在C:\Program Files (x86)\VMware\VMware VIX\VIServer-2.0.0\32bit\中加载winmm.dll、oleacc.dll、mpr.dll、msasn1.dll、winspool.drv,但都失败了。然后,它继续加载其他DLL,并正常运行。
vmrun.exe的vmware-vixWrapper.log如下所示:
Jul 30 12:16:14.802: app| Log for VixWrapper pid=3460 version=1 build=build-156745 option=Release
Jul 30 12:16:14.812: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws_server_esx-4\32bit\vix.dll'
Jul 30 12:16:14.813: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws_server_esx-4\32bit\vix.dll'
Jul 30 12:16:14.814: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws_server_esx-4\32bit\vix.dll'
Jul 30 12:16:14.814: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws_server_esx-4\32bit\vix.dll'
Jul 30 12:16:14.823: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws-2\32bit\vix.dll'
Jul 30 12:16:14.827: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws_server_esx-4\32bit\vix.dll'
Jul 30 12:16:14.827: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws_server_esx-4\32bit\vix.dll'
Jul 30 12:16:14.828: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws_server_esx-4\32bit\vix.dll'
Jul 30 12:16:14.828: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws_server_esx-4\32bit\vix.dll'
Jul 30 12:16:14.832: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws-2\32bit\vix.dll'
Jul 30 12:16:14.833: app| Loading Vix implementation library C:\Program Files (x86)\VMware\VMware VIX\\VIServer-2.0.0\32bit\vix.dll
C#
我的程序也尝试在C:\Program Files (x86)\VMware\VMware VIX\VIServer-2.0.0\32bit\中加载这些DLL,但失败了,然后继续在C:\Windows\SysWOW64中加载它们。
对于我的程序,vmware-vixWrapper.log文件如下所示:
Jul 30 12:16:38.631: app| Log for VixWrapper pid=5844 version=1 build=build-156745 option=Release
Jul 30 12:16:38.636: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws_server_esx-4\32bit\vix.dll'
Jul 30 12:16:38.637: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws_server_esx-4\32bit\vix.dll'
Jul 30 12:16:38.637: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws_server_esx-4\32bit\vix.dll'
Jul 30 12:16:38.639: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws_server_esx-4\32bit\vix.dll'
Jul 30 12:16:38.647: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws-2\32bit\vix.dll'
Jul 30 12:16:38.651: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws_server_esx-4\32bit\vix.dll'
Jul 30 12:16:38.651: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws_server_esx-4\32bit\vix.dll'
Jul 30 12:16:38.655: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws_server_esx-4\32bit\vix.dll'
Jul 30 12:16:38.656: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws_server_esx-4\32bit\vix.dll'
Jul 30 12:16:38.659: app| config points to non-existent implementation library 'C:\Program Files (x86)\VMware\VMware VIX\\ws-2\32bit\vix.dll'
Jul 30 12:16:38.660: app| Loading Vix implementation library C:\Program Files (x86)\VMware\VMware VIX\\VIServer-2.0.0\32bit\vix.dll
Jul 30 12:16:38.669: app| failed to load library C:\Program Files (x86)\VMware\VMware VIX\\VIServer-2.0.0\32bit\vix.dll (193)
Jul 30 12:16:38.669: app| No Vix library found for provider 10 revision -1任何帮助都将不胜感激!:)
这是VIX API forum上的问题。
发布于 2009-08-18 04:19:44
这似乎是由加载VMWareTask 'Version.dll'而不是'C:\Windows\System32\version.dll'引起的。我不确定细节,但一旦我删除了VMWareTasks动态链接库,一切都重新开始工作。
发布于 2009-08-04 13:10:30
可能是VixCOM中的错误。将这篇文章发布到VixCOM社区。http://communities.vmware.com/community/developer/automationapi
https://stackoverflow.com/questions/1204156
复制相似问题