6

次のコードを使用して、PointOfSale プリンターのプリンター ステータスを取得しようとしています。

Hashtable properties = new Hashtable();
ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win2_Printer");

foreach (ManagementObject obj in searcher.Get()) {
  if (obj["name"].ToString() == printerName) {
    foreach (PropertyData data in obj.Properties) {
      if(data.Name.ToLower() = "printerstatus") {
        int printerStatus = Convert.ToInt32(data.Value);
      }
    }
  }
}

問題は、電源プラグが抜かれていたり用紙がなくなっていても、ステータスが 3 (待機中) または 4 (印刷中) のいずれかであるということです。

この同じ問題に関する多くの投稿を読みましたが、答えが見つかりませんでした。これは正しいです?他にどのようにステータスを確認しますか? どんな助けでも大歓迎です。

4

1 に答える 1

0

What Brand of printer are you using?

Sometimes the Brand will have a specific command you can send to query the status.

于 2011-09-06T20:37:40.403 に答える