ネットワーク上の特定のコンピュータに関する情報を取得するために、C#でどのクラスを使用する必要がありますか? (誰がそのコンピュータにログオンしているのか、そのコンピュータで実行されているオペレーティングシステム、開いているポートなど)C#:ドメイン内のコンピュータに関する情報を取得
7
A
答えて
2
WMIライブラリです。ここにはVB.net exampleがあります。 C#に変換するのは難しいことではありません。
2
WMIライブラリを調べます。
9
チェックアウトSystem.ManagementとSystem.Management.ManagementClassです。両方ともWMIへのアクセスに使用されます.WMIは問題の情報を取得する方法です。
編集:は、リモートコンピュータからWMIにアクセスするためのサンプルと更新:
ConnectionOptions options;
options = new ConnectionOptions();
options.Username = userID;
options.Password = password;
options.EnablePrivileges = true;
options.Impersonation = ImpersonationLevel.Impersonate;
ManagementScope scope;
scope = new ManagementScope("\\\\" + ipAddress + "\\root\\cimv2", options);
scope.Connect();
String queryString = "SELECT PercentProcessorTime, PercentInterruptTime, InterruptsPersec FROM Win32_PerfFormattedData_PerfOS_Processor";
ObjectQuery query;
query = new ObjectQuery(queryString);
ManagementObjectSearcher objOS = new ManagementObjectSearcher(scope, query);
DataTable dt = new DataTable();
dt.Columns.Add("PercentProcessorTime");
dt.Columns.Add("PercentInterruptTime");
dt.Columns.Add("InterruptsPersec");
foreach (ManagementObject MO in objOS.Get())
{
DataRow dr = dt.NewRow();
dr["PercentProcessorTime"] = MO["PercentProcessorTime"];
dr["PercentInterruptTime"] = MO["PercentInterruptTime"];
dr["InterruptsPersec"] = MO["InterruptsPersec"];
dt.Rows.Add(dr);
}
注:ユーザーID、パスワード、およびipAddressのは、すべての環境に合わせて定義する必要があります。
+0
リンクありがとうございました – melculetz
3
aboutボックスのように使用する例です。 MSDNには、あなたができるアイテムの残りがあります。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Management;
namespace About_box
{
public partial class About : Form
{
public About()
{
InitializeComponent();
FormLoad();
}
public void FormLoad()
{
SystemInfo si;
SystemInfo.GetSystemInfo(out si);
txtboxApplication.Text = si.AppName;
txtboxVersion.Text = si.AppVersion;
txtBoxComputerName.Text = si.MachineName;
txtBoxMemory.Text = Convert.ToString((si.TotalRam/1073741824)
+ " GigaBytes");
txtBoxProcessor.Text = si.ProcessorName;
txtBoxOperatingSystem.Text = si.OperatingSystem;
txtBoxOSVersion.Text = si.OperatingSystemVersion;
txtBoxManufacturer.Text = si.Manufacturer;
txtBoxModel.Text = si.Model;
}
}
}
関連する問題
- 1. ドメイン上の展開に関する統計情報をプログラムで取得する
- 2. アセンブリに関する情報を取得
- 3. 他のコンピュータから情報を取得する
- 4. C#ユーザーがドメイン内でアクセスできるコンピュータの一覧を取得する
- 5. C#ループ、SQLおよび取得に関する情報
- 6. ドメインのIPアドレスとバックサーバーの情報を取得する
- 7. facebookでユニークな「LIKES」を取得するドメインの統計情報
- 8. Windowsドメイン上のリモートワークステーションからファイル情報を取得して取得する
- 9. ブラックベリーのNeighboringCell情報(ネットワーク情報に関連する情報)を取得する方法
- 10. テーブル値関数に関する情報を取得
- 11. maven依存関係に関する集約情報を取得
- 12. Capistranoのタスクに関する詳細情報を取得する
- 13. アンドロイドアプリの使用に関するデータ/情報を取得する
- 14. JavaScriptのハイパーリンクに関する情報を取得する
- 15. 私のユーザーに関する情報を取得する
- 16. 取得情報
- 17. mvc3のC#プロジェクト内でのAD情報の取得
- 18. 配列内の患者に関する情報を取得したい
- 19. Cでプロセスメモリ情報を取得
- 20. のC#、エクセル:取得範囲情報
- 21. WebDriverでDOM要素に関する情報を取得する
- 22. デバイスドライブに関する情報を取得する方法
- 23. URLに関する情報を取得するAPI
- 24. SQL Selectステートメントに関する情報を取得する方法
- 25. iosでmp3ファイルに関する情報を取得する5
- 26. CookieContainer内のCookie情報を取得するには?
- 27. c#winforms:別のドメイン上のフォルダにアクセスするために資格情報を取得して使用する
- 28. Androidデバイスが接続されているコンピュータに関する情報を取得します。
- 29. Linux Cプログラミング:デバイスのパーティション情報を取得するには?
- 30. SHA-1コミットオブジェクトに関する情報を取得しますか?
このコードをターゲットマシンで実行しようとしていますか?またはあなたのコンピュータからこれを実行し、ネットワーク上の別のマシンに関する情報を取得しようとしていますか? – Nate
自分のコンピュータからコードを実行して、ネットワーク上の別のマシンに関する情報を取得し、そのIPアドレスを知りたい – melculetz
私の答えにリモートWMIクエリーの例が示されています。 – Nate