使用 PrintServer 时传递凭据
Passing credentials when using PrintServer
我正在使用打印服务器:
PrintServer myPrintServer = new PrintServer(@"\printsrv");
但我遇到异常:
An exception occurred while creating the PrintServer object. Win32 error: The user name or password is incorrect.
如何传递用户名和密码?
您需要为该服务器缓存网络凭据。我认为最简单的方法是从代码启动 net use
命令:
var p = new Process();
p.StartInfo.FileName = "net";
p.StartInfo.Arguments = "use \printsrv password /user:domain\username";
p.StartInfo.CreateNoWindow = true;
p.Start();
p.WaitForExit();
之后 PrintServer
class 应该可以连接了。您也可以尝试这些 answers 来获取预先缓存的凭据。
我正在使用打印服务器:
PrintServer myPrintServer = new PrintServer(@"\printsrv");
但我遇到异常:
An exception occurred while creating the PrintServer object. Win32 error: The user name or password is incorrect.
如何传递用户名和密码?
您需要为该服务器缓存网络凭据。我认为最简单的方法是从代码启动 net use
命令:
var p = new Process();
p.StartInfo.FileName = "net";
p.StartInfo.Arguments = "use \printsrv password /user:domain\username";
p.StartInfo.CreateNoWindow = true;
p.Start();
p.WaitForExit();
之后 PrintServer
class 应该可以连接了。您也可以尝试这些 answers 来获取预先缓存的凭据。