Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从Windows C#服务拨打VPN连接_C#_Vpn - Fatal编程技术网

从Windows C#服务拨打VPN连接

从Windows C#服务拨打VPN连接,c#,vpn,C#,Vpn,我正在尝试使用C#和Visual Studio 2017开发一个Windows服务。我想从服务中拨出预配置的VPN连接 如果我在C#Windows桌面应用程序中放置以下代码行,它将快速闪烁CMD提示符并拨打VPN: System.Diagnostics.Process.Start(“rasdial.exe”、“ConnectionName用户密码”) 但它在服务中不起作用。我已经说到这一点了。它不会抛出错误,也不会拨号连接。当我跨过它时,它似乎什么也没做 System.Diagnostics.P

我正在尝试使用C#和Visual Studio 2017开发一个Windows服务。我想从服务中拨出预配置的VPN连接

如果我在C#Windows桌面应用程序中放置以下代码行,它将快速闪烁CMD提示符并拨打VPN: System.Diagnostics.Process.Start(“rasdial.exe”、“ConnectionName用户密码”)

但它在服务中不起作用。我已经说到这一点了。它不会抛出错误,也不会拨号连接。当我跨过它时,它似乎什么也没做

System.Diagnostics.Process process = new System.Diagnostics.Process();
process.StartInfo = new System.Diagnostics.ProcessStartInfo("rasdial.exe", "ConnectionName user password");
process.StartInfo.CreateNoWindow = true;
process.StartInfo.UseShellExecute = false;
process.StartInfo.ErrorDialog = false;
process.StartInfo.RedirectStandardError = true;
process.StartInfo.RedirectStandardInput = true;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
process.Start()
不知道如何解决这个问题,也不知道下一步该怎么做。如果有API就好了

我用谷歌搜索了一下,但没有发现任何东西,所以我想我会把它交给专家

谢谢


斯蒂芬·辛普森(Stephen Simpson)

肯·怀特(Ken White)指出,服务帐户与普通用户帐户没有相同的权限。我通过在特定用户下运行服务解决了这个问题。

如果使用相同的参数直接从命令提示符运行exe会怎么样?它工作正常吗?服务帐户没有与普通用户帐户相同的权限。如果我在提示符下运行命令行,它会工作,我可以让它在C#windows窗体应用程序中调用VPN。这也行。但在我编写的Windows C#服务中,它似乎没有任何作用。