c# - Process.Start 不适用于 Filezilla 的 UNC 路径

标签 c# azure command-line file-permissions unc

此代码曾经在安装它的 C 驱动器上运行。我们将其移至 UNC 路径\share,现在它似乎没有重新加载配置文件。没有错误,Filezilla 工作正常,因为我可以在此 UNC 共享上连接和传输文件,但从代码中我无法让它真正执行它应该执行的操作。我需要做一些特殊的凭证吗?我的网站应用程序池的用户帐户与共享帐户相同。

Process.Start("CMD.exe", "/C \"\\filezilla\\FileZilla Server.exe\" /reload-config");

更新

我在实际计算机上的命令提示符下运行了这一行,它执行了预期的操作。

另一个更新

var path = string.Format("/C \"{0}FileZilla Server.exe\" /reload-config", Config.Paths.FileZillaPath); // \\filezilla\
Process.Start("CMD.exe", path);
Logger.Debug("Path: " + path); // Path: /C "\\filezilla\FileZilla Server.exe" /reload-config

最佳答案

UNC 路径中的第一对反斜杠未正确转义,将导致单个反斜杠。尝试一下

Process.Start("CMD.exe", "/C \"\\\\filezilla\\FileZilla Server.exe\" /reload-config");

您可以在 MSDN 查看示例

string g = "\\\\server\\share\\file.txt"; // \\server\share\file.txt

string h = @"\\server\share\file.txt"; // \\server\share\file.txt

关于c# - Process.Start 不适用于 Filezilla 的 UNC 路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36510316/

相关文章:

linux - 最好通过命令行将 Ubuntu 11.04 更新到 12.04

c# - 如何使用 MVVM 模式将子元素添加到 WPF 中的网格

c# - 如何通过使用日期作为 Elasticsearch 的字符串比较来获取文档?

linux - 将.net core 3.1 Web应用部署到Azure Linux应用服务

Azure BlockBlob 从流上传的内容长度始终为 0

php exec 与 phing 的内存使用情况

java - 在 Unix 命令行中编译并运行 netbeans GUI 应用程序

c# - 没有要求参数的 MVC 4 JSON 路由发布数据路由

c# - C# 命令中的 PowerShell

Azure Blob 存储 - MD5 损坏