使用进程通过 mstsc.exe 连接失败
Using Process to connect via mstsc.exe failes
我创建了一个小工具,我想通过 mstsc.exe 连接到远程桌面。
我找到了很多示例,显然它们都有效。但出于某些原因,我没有! :(
实际上是一个小代码
private void RunRDP(object sender, EventArgs e)
{
Process rdcProcess = new Process();
//Add/Change Credentials
/**
rdcProcess.StartInfo.FileName = Environment.ExpandEnvironmentVariables(@"%SystemRoot%\system32\cmdkey.exe");
rdcProcess.StartInfo.Arguments = String.Format(@"/generic:TERMSRV/{0} /user:{1} /pass:{2}", tbServer.Text, tbUsername.Text, tbPassword.Text);
rdcProcess.Start();
*/
//Perform mstsc
rdcProcess.StartInfo.FileName = Environment.ExpandEnvironmentVariables(@"%SystemRoot%\system32\mstsc.exe");
rdcProcess.StartInfo.Arguments = string.Format(@"/v {0}", tbServer.Text);
rdcProcess.Start();
}
我取出添加凭据只是为了测试连接...仍然失败。
当我评论这行时
rdcProcess.StartInfo.Arguments = string.Format(@"/v {0}", tbServer.Text);
至少打开mstsc.exe
在任何其他情况下我都会收到错误
Invalid connection File
错误一定是这样的。将此从德语翻译成英语不会带来任何类似的错误描述:D
为什么我的程序失败了?
运行 'mstsc /?' 给我:
/v:<server[:port]> -- Specifies the remote computer to which you want to connect.
所以我想你应该把它改成:
rdcProcess.StartInfo.Arguments = string.Format(@"/v:{0}", tbServer.Text);
我创建了一个小工具,我想通过 mstsc.exe 连接到远程桌面。
我找到了很多示例,显然它们都有效。但出于某些原因,我没有! :(
实际上是一个小代码
private void RunRDP(object sender, EventArgs e)
{
Process rdcProcess = new Process();
//Add/Change Credentials
/**
rdcProcess.StartInfo.FileName = Environment.ExpandEnvironmentVariables(@"%SystemRoot%\system32\cmdkey.exe");
rdcProcess.StartInfo.Arguments = String.Format(@"/generic:TERMSRV/{0} /user:{1} /pass:{2}", tbServer.Text, tbUsername.Text, tbPassword.Text);
rdcProcess.Start();
*/
//Perform mstsc
rdcProcess.StartInfo.FileName = Environment.ExpandEnvironmentVariables(@"%SystemRoot%\system32\mstsc.exe");
rdcProcess.StartInfo.Arguments = string.Format(@"/v {0}", tbServer.Text);
rdcProcess.Start();
}
我取出添加凭据只是为了测试连接...仍然失败。
当我评论这行时
rdcProcess.StartInfo.Arguments = string.Format(@"/v {0}", tbServer.Text);
至少打开mstsc.exe
在任何其他情况下我都会收到错误
Invalid connection File
错误一定是这样的。将此从德语翻译成英语不会带来任何类似的错误描述:D
为什么我的程序失败了?
运行 'mstsc /?' 给我:
/v:<server[:port]> -- Specifies the remote computer to which you want to connect.
所以我想你应该把它改成:
rdcProcess.StartInfo.Arguments = string.Format(@"/v:{0}", tbServer.Text);