0

VMWare タスクライブラリを使用して、テスト用にいくつかの VM を自動化しようとしています。ただし、私の C# プログラム (32 ビット) が vix.dll を読み込もうとすると、失敗するようです。VixCOM ディレクトリから vmrun.exe を実行すると機能します。


vmrun.exe

procmon では、vmrun.exe がwinmm.dll, oleacc.dll, mpr.dll,を読み込もうとしていることがわかりますがmsasn1.dll、すべて失敗winspool.drvしています。C:\Program Files (x86)\VMware\VMware VIX\VIServer-2.0.0\32bit\その後、他の DLL のロードを続行し、正常に実行されます。

vmrun.exevmware-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#

私のプログラムは、これらの DLL を にロードしようとしてもC:\Program Files (x86)\VMware\VMware VIX\VIServer-2.0.0\32bit\失敗し、引き続き にロードします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 フォーラムでの質問は次のとおりです。

4

2 に答える 2

0

'Version.dll'これは、の代わりにロードされていたVMWareTaskが原因であると思われます'C:\Windows\System32\version.dll'。詳細はわかりませんが、VMWareTasks dllを削除すると、すべてが再び機能し始めました。

于 2009-08-18T04:19:43.637 に答える