我尝试了各种方法来通过C#运行这个特定的DOS命令。我不想使用批处理文件。无论我尝试什么,它只保留打印机名称中的第一个字而不是整个名称,在这种情况下,它表示打印机POS没有连接而不是说打印机POS Lexmark没有连接。错误是什么?谢谢你们!
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);
答案 0 :(得分:5)
您忘记在POS Lexmark周围加上引号:
string command = string.Format("/c rundll32 printui, PrintUIEntry /o /n" + "\" POS Lexmark\"");