制作“图像”c#的整个文件系统
本文关键字:文件系统 图像 制作 | 更新日期: 2023-09-27 18:11:09
当时学校正在制作一些管理软件,我想制作一个应用程序,以便从互联网上的另一台计算机上上传文件到ftp服务器。(我们需要在我们想要管理的pc上安装一个windows服务来实现它。)
所以我需要做一些像"文件资源管理器",在那里我可以右键单击一个文件,并按下上传。假设管理PC是PC1,我们想要管理的PC是PC2
当PC1想要整个文件系统的新映像时,我想到PC1向PC2发送一条消息。当PC2收到这样的消息时,他将图像上传到FTP服务器上。
我如何实现这个"图像"?我只需要知道文件夹名称,绝对文件夹路径和文件名(也许文件大小和其他信息太)重建图像在一个树视图。
我考虑过用XML实现它。比如:
<fileSystem>
<drive name="c:">
<item type="folder" name="folder1">
<item type="file" name="file1"/>
<item type="file" name="file2"/>
<item type="folder" name="folder2"/>
<item type="folder" name="folder3">
<item type="file" name="file3"/>
</item>
</item>
</drive>
</fileSystem>
有没有其他更好的解决方案?你会怎么做?
提前感谢!
正如Justin所说,您的数据模型看起来不错,两台主机之间的通信需要认真考虑。
也许你可以研究Signalr.net,它可以从Windows应用程序或基于web的方法中使用。我没有使用过这项技术,但这里有一个链接可以让你入门:SignalR简介我认为这将是一种情况:
- 安装信号服务器
- 在主机间发送消息。
。
- PC1。发送请求可用驱动器列表的消息
- PC2。响应C:, D: etc
- PC1发送请求C: contents
- PC2响应文件夹',文件夹2',File1.txt等
使用这种方法意味着您不必拍摄文件系统的"映像"或快照,使其更快,所需的带宽更少。