我使用以下内容来映射网络打印机
using (Process p = new Process())
{
Console.WriteLine("Attempting to add: {0}", newPrinter);
p.StartInfo.FileName = "cmd.exe";
p.StartInfo.Arguments = string.Format("/c start {0}", newPrinter);
p.StartInfo.CreateNoWindow = true;
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardError = true;
p.Start();
p.WaitForExit();
if (Convert.ToInt16(row["IsDefault"]) != 0)
{
Console.WriteLine("Setting Default");
NativeMethods.SetDefaultPrinter(newPrinter);
}
当打印机名称包含空格时,它会在空格之前将其剪切掉。 如何通过空格识别打印机的UNC并将其连接?
答案 0 :(得分:1)
怎么样
p.StartInfo.Arguments = string.Format("/c start \"{0}\"", newPrinter);
那会有用吗?
编辑: