2

次のコードでは、取得しています

System.ComponentModel.Win32Exception: ネットワーク パスが見つかりませんでした

誰でも助けることができますか?

PerformanceCounter pc = new PerformanceCounter("System",
        "System Up Time");
                pc.MachineName = "1.2.3.4";

                //Normally starts with zero. do Next Value always.
                pc.NextValue();
                TimeSpan ts = TimeSpan.FromSeconds(pc.NextValue());

                Response.Write("This system 1.2.3.4 has been up for " + ts.Days + " days " + ts.Hours + " hours, " + ts.Minutes + " and " + ts.Seconds +" seconds.");

編集:マシン名で試しましたが、それでも同じエラーが発生します! 注: 1.2.3.4 はサンプル値です。

4

4 に答える 4

12

このエラーは、リモートレジストリサービスがリモートマシン1で開始されていない場合に発生する可能性があります。

于 2012-11-12T09:44:55.543 に答える
2

コメントを外すpc.NextValue()と、コードが機能します。この問題は、不適切なマシン名または IP アドレスを指定することで再現できます。だからあなたのIPは悪いです。

var machineNameOrIP = "10.16.7.1";
var pc = new PerformanceCounter("System", "System Up Time");
pc.MachineName = machineNameOrIP;
//Normally starts with zero. do Next Value always.
pc.NextValue();//uncomment this
var ts = TimeSpan.FromSeconds(pc.NextValue());
Response.Write("This system " + pc.MachineName + " has been up for " + ts.Days + " days " + ts.Hours + " hours, " + ts.Minutes + " and " + ts.Seconds +" seconds.");
于 2011-01-24T18:50:08.310 に答える
0

MachineName "1.2.3.4" が存在しないか、ネットワークに到達できません。

ネットワーク上に存在するマシン名でコードをテストしましたが、正常に動作しました。

于 2011-01-24T18:48:37.673 に答える
0

おそらく、使用している MachineName 値は、ネットワーク上で見つけることができるマシンではありません。私はそれから始めて、あなたがそれに接続できることを検証します。

于 2011-01-24T18:48:53.843 に答える