我尝试过的图像文件到C复制拷贝到c盘:驱动器(SYS操作),但它说错误妇女参与发展的访问被拒绝,我已经作为如何将文件从任何目录使用cmd在C#
string strCmdLine;
strCmdLine = @" /c xcopy d:\123.png C:\windows\system32";
Process.Start("CMD.exe", strCmdLine);
我尝试过的图像文件到C复制拷贝到c盘:驱动器(SYS操作),但它说错误妇女参与发展的访问被拒绝,我已经作为如何将文件从任何目录使用cmd在C#
string strCmdLine;
strCmdLine = @" /c xcopy d:\123.png C:\windows\system32";
Process.Start("CMD.exe", strCmdLine);
你需要运行的CMD.exe作为管理员尝试以下
Process p = new Process();
p.StartInfo.FileName = "cmd.exe";
p.StartInfo.Verb = "runas";
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardInput = true;
p.Start();
p.StandardInput.WriteLine(@"/c xcopy d:\123.png C:\windows\system32");
您可以检查This后它展示了如何运行程序作为管理员。
thnks很多先生, – 2012-04-20 06:27:51
你可能没有足够的权限....
尝试添加凭据:
Process p = new Process();
process.StartInfo.UserName = "aaaa";
process.StartInfo.Password = "xxxxx";
...
...
也验证:
阅读权限:C:\windows\system32
先生,但如果我们想制作一个应用程序,用户浏览他自己的图片,然后将应用程序复制到c:驱动器,那么它将如何获得许可? – 2012-04-20 06:06:13
拒绝访问可能由几个原因,比如用户权限或文件正在使用中造成的:d:\123.png
写权限。由于命令行似乎正常,我建议检查您的应用程序是否由有权写入C:\ windows \ system32的Windows用户运行。
在cmd shell中尝试相同的参数并查看它是否成功b4从代码中尝试它。 – Zenwalker 2012-04-20 05:58:53
'xcopy'是一个本地程序,而不是内置的shell。你不需要通过'cmd'运行它。 – Joey 2012-04-20 06:02:27
你真的需要使用命令行吗?已经有几个内建类可以完成这项工作。如果要处理可能的异常/失败者(特别是对返回结果下的问题的评估),使用命令外壳并不是很容易。请参阅System.IO命名空间和FileInfo/File类,地址为:http://msdn.microsoft.com/de-de/library./system.io%28v=vs.90%29.aspx – Beachwalker 2012-04-20 06:18:54