我正在嘗試使用Vix API,並試圖接收我正在處理的虛擬機的一些信息。我需要的信息是虛擬機連接的域,以及註冊(即有權訪問)特定虛擬機的用戶列表。 我嘗試使用'谷歌'和文檔(https://www.vmware.com/support/developer/vc-sdk/visdk2xpubs/ReferenceGuide/),但我找不到如何獲取此信息。試圖分配一些可能包含域名的對象,但沒有幫助。使用Vix API獲取虛擬機的域名和用戶列表
0
A
回答
0
我不知道這是否會幫助你,但下面是一個Delphi 項目的提取物(使用相同的Vix指數COM/OLE接口如VBScript)從環境下獲取 當前用戶名一個Win7虛擬機。希望代碼 可以直接轉換爲vbScript或VBA。顯然, 您可以以類似的方式檢索任何其他環境變量(例如用戶域)的值。
我已經通過VIX指數COM API相當徹底的外觀和沒有發現任何這將檢索虛擬機可用的登錄ID的列表。因此,如果我必須這樣做,我會編寫一個小型實用程序應用程序在VM中運行以獲取它們。 (您可能已經知道,但它是簡單的通過VIX指數界面運行在虛擬機的應用程序。)
代碼
type
TForm1 = class(TForm)
[...]
VixLib : IVixLib;
Job : IJob;
Host : IHost;
VM : IVM;
Err : Int64;
vWaitParams : OleVariant;
vResults : OleVariant;
vValue : OleVariant;
Msg : String;
end;
[...]
procedure TForm1.GetUserName;
begin
// Prior to calling this code, you need to have successfully called
// LogInGuest on the VM via Vix
// change USERNAME to USERDOMAIN in the following line to get the domain
Job := VM.ReadVariable(VIX_GUEST_ENVIRONMENT_VARIABLE, 'USERNAME', 0, Nil);
vWaitParams := VarArrayOf([VIX_PROPERTY_JOB_RESULT_VM_VARIABLE_STRING]);
Err := Job.Wait(vWaitParams, vValue);
if Err <> 0 then
raise Exception.Create('Error %d', [Err]);
Msg := vValue[0];
Caption := Msg;
end;
相關問題
- 1. 從虛擬機獲取用戶名
- 2. 獲取衍生虛擬機ID的API?
- 3. 使用虛擬網絡的自定義主機名域名
- 4. 如何使用vCloud SDK獲取虛擬機的「全名」?
- 5. c#API從MOR獲取虛擬機的名字
- 6. 虛擬域名和子域名使用mod_rewrite
- 7. 使用Python提供的Virtualbox虛擬機的列表名稱
- 8. 獲取用戶名和域名(域\用戶)在ASP.Net C#
- 9. 獲取用戶名和域名在C++
- 10. 如何獲取win32 API的域用戶帳戶列表?
- 11. shell腳本將域名列表添加到apache虛擬主機
- 12. 如何獲取虛擬表的名稱?
- 13. 使用aws api創建新虛擬機
- 14. 獲取應用服務器下的真實(虛擬)主機名
- 15. 使用PHP創建REST API:獲取請求主機的域名
- 16. 查詢註冊的虛擬機時,VMware VIX API FindItems()方法永不返回
- 17. 如何使用Java API獲取Azure經典虛擬網絡的列表
- 18. 使用PHP從api獲取域名?
- 19. IP和基於域的虛擬主機
- 20. SSO獲取用戶名/域
- 21. 使用apache2和虛擬主機的子域配置
- 22. 如何使用Graph API獲取頁面/用戶/應用程序的域列表?
- 23. 使用EWS託管API 2.2獲取用戶帳戶的別名列表
- 24. LDAP通過用戶名和域名獲取用戶DN
- 25. 如何驗證Azure虛擬機用戶名和密碼?
- 26. REST API創建虛擬機部署:如何使用AD DC創建虛擬機?
- 27. 虛擬機的Azure Api
- 28. 子域,虛擬主機XAMPP
- 29. 序列發送到使用Vix指數的虛擬機指令的失敗有時
- 30. 獲取虛擬機的IP地址