我正在编写一个 .Net 应用程序来在 linux 和 windows 之间传输文件。我使用单声道来实现平台独立性。
我使用https://code.google.com/p/cifsclient/作为参考(感谢 Jordi Martin)。他很棒的解决方案与我想要实现的目标相似。
我很难将文件从 Windows 共享(文件驻留在此处并与“所有人”共享)传输到 linux 机器(我的应用程序在单声道上运行)
解决问题的一种方法是在 linux 上挂载共享的 windows 文件夹。不幸的是,我没有 root 凭据,所以安装很困难。 第二种方法是,使用身份验证令牌(使用 Windows 凭据初始化为 smbclient_init)依次将文件 url 更改为 smb://fileSharePath 尽管令牌具有适当的凭据,但后续访问请求会失败。第三种方法是在 fileSharePath 前面加上“net use”后缀的 win creds,但这也很糟糕。http://social.msdn.microsoft.com/Forums/vstudio/en-US/03bf0cf2-be80-43a4-870c-83727dee1c63/access-a-samba-share-via-c?forum=csharpgeneral
总而言之,我没有 Windows 共享的用户名/密码或运行我的应用程序的 linux 机器的根凭据。我没有空间服务,即。ftp、http 等运行。有没有办法涵盖将文件从 linux box 传输到 windows 文件共享的场景,反之亦然?
任何帮助将不胜感激,我已经摆弄了一个星期,但没有想出一个好的解决方案。
提前致谢,
舒布