繁体   English   中英

从C#表单应用程序中执行远程批处理文件

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM