问题描述
我有一个需要访问共享文件夹的第 3 方应用程序。同时,我不希望当前的 Windows 用户有权访问该文件夹。为了解决这个问题,我在 PC 上创建了一个专用的 windows 用户,并在 windows 凭据管理器中保存了共享文件夹的网络凭据,因此用户将始终可以访问共享文件夹。然后我使用 this answer 的解决方案以另一个用户的身份启动一个新进程。
System.Diagnostics.Process proc = new System.Diagnostics.Process();
System.Security.securestring sspwd = new System.Security.securestring();
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.FileName = "filename";
proc.StartInfo.Arguments = "args...";
proc.StartInfo.Domain = "";
proc.StartInfo.UserName = "testuser";
string password = "user entered password";
for (int x = 0; x < password.Length; x++)
{
sspwd.AppendChar(password[x]);
}
password = "";
proc.StartInfo.Password = sspwd;
proc.Start();
不幸的是,当第 3 方应用程序尝试访问共享文件夹时,它仍然收到“用户名或密码不正确”错误。
我是不是走错方向了?这种方法可行吗?或者可能有另一种方法来实现这一目标?提前致谢。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)