Windows通过网络路径读取文件打开套接字?

Windows通过网络路径读取文件打开套接字?

问题描述:

当您在Windows资源管理器中打开网络路径并将其拖动到本地文件夹时,是否会打开一个套接字?另外,当你使用c#FileStream fin = new FileStream(@“// networkpath/file);这是否会打开一个socked?我的问题是这样的,它是一样快的手动将文件通过套接字流,因为它会使用c#的文件流通过网络读取它?Windows通过网络路径读取文件打开套接字?

+3

我认为唯一值得注意的区别是达到最终目标所需的工作量;使用'FileStream'可以让你编写更少的代码。 – 2011-03-07 15:52:58

Windows文件服务在默认情况下(尽管不一定)通过TCP/IP工作,所以通常会涉及套接字。是的,SMB协议有一些开销,即Windows但是,对于传输时间很重要的文件来说,与数据相比,开销是很小的

另外,没有很好的理由提出自己的文件共享协议是一个坏主意。和调试工作,你必须以某种方式安装服务器部分,你必须考虑安全性mplications(用户认证等),防火墙将打破它......只是不值得。

要了解所涉及的工作量,请阅读FTP协议的说明。

+0

我一直在实施一个系统,通过网络读取文档并进行处理。我不是试图在文件传输协议中重新发明*,但我也试图解决我们选择哪个文件需要处理的问题。我想知道让服务器从文档中发送单个页面以及处理哪个文档是多么实际,这引发了我的好奇心。通过不使用服务器/客户端套接字级别解决方案的网络进行文件选择,更好的方法是什么? – 2011-03-07 16:55:43

+0

“需要处理哪个文件”和“文档中的单个页面”是两个非常不同的问题。第二种方法没有很好的解决方案,除非你有一组非常统一的文档(即它们都是Microsoft Word文档)。 – 2011-03-07 20:22:07