簡體   English   中英

Windows 7和我的C#程序中的復制問題

[英]Problem with copy in Windows 7 and my C# program

我在C#程序中這樣做:

File.copy(Application.StartupPath + "\Test.txt",@"c:\Test.txt");

但是我得到這個錯誤:

Access to  the path 'c\Test.txt' is denied

它僅在Windows 7中才會發生,在Windows XP中它的運行效果非常好。

訪問被拒絕。 這意味着您無權訪問。 不,確實如此。

默認情況下,Windows 7中的用戶帳戶是受限的(非管理員),因此您的程序不能只寫系統上的任何地方(這就是好東西(TM))。 嘗試將Test.txt放在另一個目錄中,例如temp目錄(詢問系統所在的目錄)。

Win 7阻止系統驅動器上的根文件夾...將文件放在您有權復制的位置。

除了其他人所說的之外,請嘗試使用特殊文件夾 並了解有關使您的應用程序具有UAC意識的知識

Windows 7 不允許訪問程序文件夾和根文件夾。 您可以授予目錄編寫者訪問權限或將目標路徑更改為一個用戶文件夾,例如“我的文檔”或“應用程序目錄”。

您可以使用Environment.GetFolderPath();定位此路徑。

Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData); 提示: “ C:\\ Users \\ Admin \\ AppData \\ Roaming”

最好使用Path.Join加入文件和路徑

File.copy(Path.Join(Application.StartupPath, "\Test.txt"), @"c:\Test.txt");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM