[英]Execute remote batch file from within a C# forms application
我正在使用以下将在连接成功后执行登录脚本的VPN拨号程序。
Process p = new Process();
try
{
p.StartInfo.UseShellExecute = true;
p.StartInfo.FileName = @"\\serverName\NETLOGON\Script Test.cmd";
p.Start();
p.WaitForExit();
}
}
catch (Exception ex)
{
}
批处理文件将根据该批处理文件中的日志记录方法正确执行,但是驱动器未强制映射为供用户使用。 测试的其他批处理文件(本地和远程)具有相同的结果。
我假设这与应用程序域或UAC有关。 完成的应用程序将在Viata / 7上运行,并在Windows 7上进行测试。
在这里的任何帮助将不胜感激。
关于伯特
映射的驱动器存储在用户配置文件中。 当用户登录时,通常会加载该资源。访问配置文件相关资源的最常见方法是模拟用户。
有一个相对较差的(PInvoke)示例,可在此处执行此操作: http : //support.microsoft.com/kb/306158#4
但是通常使用脚本中的映射驱动器会带来麻烦。 恕我直言 :)
希望能有所帮助,
一月
您可以检查是否发生任何异常。 我看到catch(except ex)吞噬了您。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.