我开发了一个 Windows 服务来在目录中写入 PDF 文件。该服务将文件写入本地驱动器没有问题。但是当它尝试写入网络映射驱动器时,它会失败并将文件写入应用程序目录。
最佳答案
以下是我在创建与您相同的服务(在网络驱动器上阅读和保存 PDF)时的一些经验。我有 2 个驱动器:第一个不需要身份验证,第二个必须进行身份验证。
映射网络驱动器的常见故障
UNC 路径与驱动器号:驱动器号不起作用,您必须使用 UNC 表示法指定路径。 (例如\\10.17.194.1\RemoteDir\)
身份验证:如果网络驱动器需要您进行身份验证,我找到的唯一方法是在运行该服务的机器上创建身份验证用户。如果您需要使用“RemotePassword”验证为“RemoteUser”以访问网络驱动器,您应该在服务器上创建一个RemoteUser/RemotePassword 帐户并让服务以该用户身份运行。
如果您没有访问该目录的权限,您将收到一个异常,告诉您它找不到该目录/文件,或者它不存在。
服务无法自行建立连接:此外,必须至少从资源管理器手动访问网络驱动器一次,以便您可以浏览它。我的服务无法自行建立与网络驱动器的连接,必须之前在资源管理器中建立。
希望以上几点对您有所帮助。
关于 Windows 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1063137/