2012-12-19 101 views
2

File.Move/File.Copy是否使用NIC將文件從一臺計算機移動到另一臺計算機?如果不是,我如何在C#中編程使用NIC將文件從一臺計算機傳輸到另一臺計算機?File.Move/File.Copy使用網絡接口卡(NIC)?

+0

@CodeCaster我不知道從哪裏開始和谷歌沒有提供適當的 –

回答

1

是,File.MoveFile.Copy將工作在網絡共享,例如:

File.Copy(@"C:\Filename.txt", @"\\hostname\c$\Filename.txt"); 
File.Copy(@"C:\Filename.txt", @"X:\Filename.txt"); // If the network share was mapped to X:\ 

,如果你的用戶可以訪問到共享,將工作,或者如果你以前訪問的共享使用Windows不同的憑據資源管理器。如果沒有,你會得到一個System.UnauthorizedAccessException,你將不得不supply credentials

+0

得到錯誤,例如給定路徑的格式不被支持。 –

+0

你想使用什麼路徑? – Anlo

0

如果通過網卡指網絡接口卡,那麼它會使用它將文件從一臺計算機移動到另一臺計算機,但只能通過操作系統間接移動。

文件程序將與操作系統進行通信,操作系統將在需要時轉而使用網卡。

您必須將Windows設置爲網絡。

你做什麼看起來是這樣的:

File.Copy(@"C:\foo.bar", @"\\nas\data\foo.bar"); 

但是,如果你映射網絡驅動器也有可能是這樣的:

File.Copy(@"C:\foo.bar", @"n:\data\foo.bar"); 

這一切都取決於你的情況。

0

File.Move/File.Copy在比實際硬件(您的NIC)高得多的抽象層上工作。

操作系統可能(取決於您複製的文件的路徑)決定使用NIC,僅限於本地磁盤,USB連接或其他任何東西。

你不必在意這一點,你只需要確保目標的路徑是正確的(本地文件路徑或UNC路徑或其他)