この特定の DOS コマンドを C# で実行できるさまざまな方法を試しました。バッチファイルを使用したくありません。何を試しても、名前全体ではなく、プリンター名の最初の単語のみが取得され続けます。この場合、プリンター POS Lexmark が接続されていないと言う代わりに、プリンター POS が接続されていないと表示されます。エラーは何ですか?みんなありがとう!
DOS コマンドは次のとおりです。
rundll32 printui, PrintUIEntry /o /n "POS Lexmark"
私のコードは次のとおりです。
string command = string.Format("/c rundll32 printui, PrintUIEntry /o /n" + " POS Lexmark");
ProcessStartInfo cmdsi = new ProcessStartInfo("cmd.exe");
cmdsi.Arguments = command;
cmdsi.CreateNoWindow = false;
Process cmd = Process.Start(cmdsi);