我试图从文件服务器运行可执行文件,我首先尝试使用该功能制作测试应用程序。这非常有效(让我们将其称为APP1
),但后来我将其移至Windows窗体(即APP2
),我不断获得Invalid Directory
或File Not Found
错误。
这是我使用的代码:
var sspw = new SecureString();
foreach (var c in "MyPassword")
sspw.AppendChar(c);
ProcessStartInfo procStartInfo = new ProcessStartInfo()
{
UseShellExecute = false,
CreateNoWindow = true,
FileName = @"\\MyServer\MySharedDirectory\MyFolder\usernametest.exe",
Arguments = "",
Domain = "MyDomain",
UserName = "SomeUser",
Password = sspw
};
我正在运行的应用程序是一个简单的应用程序,它显示运行它的用户的用户名。我试过单独设置工作目录和文件名,但这没有用。
当我尝试APP1
时,它与我的域中的2个不同用户一起使用。当我运行Windows窗体应用程序时,它会通过登录,因此登录显示正常(输入错误的密码会给我错误的pw错误),但随后出现上述错误。
APP1
从我的本地计算机运行,而APP2
位于我尝试运行的可执行文件的上一级(AKA on相同的文件服务器),从文件服务器而不是我的本地计算机运行应用程序有什么不同?