Hyper-V上で実行されているすべてのVMのステータスを取得できるコンポーネントまたはクラスはありますか?私はすべてのvmsとその状態(停止、実行中、一時停止など)を一覧表示できるようにしたい。DelphiまたはC#を使用してHyper-Vで仮想マシンの状態を取得する方法
私はマイクロソフトがWMIメソッドを持っていることを知っていますが、私が入手したサンプルはすべて.Net用であり、Delphi用ではありません。これらのクラスをDelphiで変換できるはずですが、Delphiで既に使用できるものがあれば簡単です。
EDIT
私はC#でのサンプルを持っている:
/
/ define the information we want to query - in this case, just grab all properties of the object
ObjectQuery queryObj = new ObjectQuery("SELECT * FROM Msvm_ComputerSystem");
// object for storing WMI connection options
// pass the "user", "password" and "domain" from command-line
// don't hard-code these into the application!
ConnectionOptions connOpts = new ConnectionOptions();
connOpts.Username = user;
connOpts.Authority = "ntlmdomain:" + domain;
connOpts.Password = password;
// management scope object
ManagementScope manScope = new ManagementScope(@"\\RemoteSystem\root\virtualization", connOpts);
// connect and set up our search
ManagementObjectSearcher vmSearcher = new ManagementObjectSearcher(manScope, queryObj);
ManagementObjectCollection vmCollection = vmSearcher.Get();
// loop through the VMs
foreach (ManagementObject vm in vmCollection)
{
// display VM details
Console.WriteLine("\nName: {0}\nStatus: {1}\nDescription: {2}\n",
vm["ElementName"].ToString(),
vm["EnabledState"].ToString(),
vm["Description"].ToString());
}
が、私はそれは私がそれを翻訳しようとすることができます動作するかどうかを確認するためのVisual Studioでこれを実行しようとしましたデルファイに私は、ユーザー名、ドメイン、およびパスワードを変更するにもかかわらず、しかし、私はまだ、このエラーを得た:
MagWMIで、 Magenta SystemsでWMIにアクセスするための無料のDelphiのコードがあります{"The RPC server is not available. (HRESULT: 0x800706BA)"}
この特定のデータを取得していますが、.NETだけでなく、さまざまな言語でのWMIの例が多数あります。これらの例の情報をVMの対話で見つかった.NET固有の例と組み合わせることはできませんか? – GolezTrol
WMIとDelphiに関する優れたブログがあります:http://theroadtodelphi.wordpress.com/ – Andreas
待ってください。あなたはこれを行う方法について多くの.Netの例を見つけることができると言った。 Delphiの代わりにC#で回答を受け取ることができます。あなたの質問は何ですか? –