【发布时间】:2014-08-27 01:29:05
【问题描述】:
假设我打开 Windows 资源管理器并将文件从网络共享文件夹 \S1 拖到另一个网络共享文件夹 \S2。
文件的字节是否通过我当前使用的计算机进行传输?
我正在编写一个简单的 C# 程序来在存储位置之间复制这些文件。如果是使用File.CopyTo这样的函数,是否相当于资源管理器中的拖放?
如果我自己编写复制函数并使用流来完成,那么字节将通过程序运行的任何地方,但我可以更轻松地跟踪进度。
【问题讨论】:
-
Do the bytes of the file stream through the computer I'm currently using?- 嗯......是的。你能更具体地说明什么让你感到困惑吗?有点难以理解您的问题所要求的。您只是询问自定义文件副本的进度指示器吗?或者您实际上想要详细了解 Windows 如何与您的 NIC 通信? -
嗯,一种可能是文件从不接触计算机,并且在操作系统启动后在较低级别处理传输。
-
@user3916403 是的,字节是通过复印机路由的。如果你想亲眼看看,你可以得到一个像 Wireshark 这样的程序,在你复制网络文件时观察网络流量。
-
我想我担心的是,windows 可能有有效的方法来进行这种传输,我可能会或可能不会通过滚动我自己的自定义方法而失败。为什么不给出答案让我接受呢?
标签: c# windows networking file-io