我嘗試過的圖像文件到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