我在Windows Vista x64上使用VMware Workstation 6.5。我想自動化一些虛擬機管理任務。我知道有一個COM API(http://www.vmware.com/support/developer/vix-api/)可供我直接使用。是否有適用於VMware VIX API的C#包裝?
是否有這個COM API的C#包裝?
感謝,
阿尼
我在Windows Vista x64上使用VMware Workstation 6.5。我想自動化一些虛擬機管理任務。我知道有一個COM API(http://www.vmware.com/support/developer/vix-api/)可供我直接使用。是否有適用於VMware VIX API的C#包裝?
是否有這個COM API的C#包裝?
感謝,
阿尼
ArnieZ。
任何COM DLL都可以從.NET中使用。將其作爲在Visual Studio中引用將生成一個名爲
「YourDll.Interop.dll」
DLL這是一個.NET - > COM編組庫,並會做你的需要。
您也可以在命令行中使用tlbimp.exe是
當然產生這個,你必須記住,你是在調用COM組件,並記住使用.NET API封送處理以減少當您完成使用它們時,引用會計數,否則會導致內存泄漏。
我包裹在它的對象實現IDisposable,這樣的清理是自動處理之前,其他庫的互操作實現,但如果是一個大型圖書館,這可能不是值得努力。
怎麼回合在VS.Net加入參考這個API,讓VS.Net爲你創建一個託管的包裝?我不知道任何「託管」的API。讓我知道如果你找到它:)
如果我找不到,我可能會考慮寫一個。這將是一個有趣的項目... :) – 2008-12-17 23:54:01
現在有一個包裝此了一個很好的圖書館: http://www.codeproject.com/KB/library/VMWareTasks.aspx
謝謝。幹得好! 不幸的是,我發現VMware Workstation沒有公開某些我需要的管理操作(例如創建VM和VM團隊)。 我將無法達到我想要的自動化級別,直到升級到ESX時:-( – 2008-12-29 23:06:12
確實非常好,而且dblock是封裝的作者,並且是一個非常有幫助的人! – Retne 2009-09-30 15:13:41
VMWareTasks是VixCOM一個完整的包裝:http://vmwaretasks.codeplex.com
這是爲什麼被擊落的? – Will 2008-12-18 00:03:27