gpt4 book ai didi

c# - 为什么 DriveInfo.GetDrives() 无法在 Windows 服务中获取网络映射驱动器

转载 作者:太空狗 更新时间:2023-10-29 22:53:07 26 4
gpt4 key购买 nike

我有一个使用 VS 2010 在 .NET C# 中开发的 Windows 服务,我正在调用 DriveInfo.GetDrives() 但它没有获取 Z: 驱动器(映射的网络驱动器),

我做了一些谷歌搜索,发现一些结果指向 Windows 帐户权限,所以我尝试了所有帐户类型的服务安装程序,例如 LocalSystem、User、LocalService、NetworkService,但都没有用,我仍然无法获得驱动器 Z:.

我做了另一个测试,调试 Windows 服务(作为控制台应用程序),我可以通过这种方式获得驱动器 Z:

我的问题有解决方案吗?

最佳答案

您需要使用映射了网络驱动器的帐户来运行 Windows 服务,例如,与您用于运行控制台应用程序的帐户相同。正如 Hans 建议的那样,您不应该在 Windows 服务中使用映射驱动器,因为它们是与真实用户相关的概念。

但是,如果您真的想继续使用映射驱动器,请参阅此相关问题以了解与此特定情况相关的陷阱和解决方法:

How to map a network drive to be used by a service

关于c# - 为什么 DriveInfo.GetDrives() 无法在 Windows 服务中获取网络映射驱动器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12029855/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com