3

我需要运行位于我域中的网络驱动器上的 exe 文件。该驱动器以“M:\”的形式成功连接到我的 PC,但我知道 Process.Start(string, string...) 在启动位于网络共享上的进程时需要具有文件的 URL 路径。

这是我的代码:

                string user = "user";
                string password = "Qwerty1";
                string domain = "nwtraderds";
                string open = "file://myshare\dir1\dir2\dir3\test.exe";

                string PwString = password;

                char[] PasswordChars = PwString.ToCharArray();
                SecureString Password = new SecureString();
                foreach (char c in PasswordChars)
                    Password.AppendChar(c);

                System.Diagnostics.Process.Start(open, user, Password, domain);

有趣的是:

                System.Diagnostics.Process.Start(open);

工作正常。我的想法已经用完了,有人可以帮助我吗?

4

1 回答 1

1

虽然已经挂载了网络共享,但 Windows 将不接受从同一个桌面以不同的用户访问它 - 您甚至可以自己尝试:只需使用 user1 挂载它,然后尝试再次挂载相同的共享(并行)与不同的用户(user2),而它仍然挂载(同一台机器,相同的Windows资源管理器!)。

更新:

file://myshare\dir1\dir2\dir3\test.exe行不通!

您要么使用\\myserver\myshare\dir1\dir2\dir3\test.exe(不确定这是否有效!)要么使用驱动器号M:\\dir1\dir2\dir3\test.exe

于 2012-02-08T07:19:57.533 回答