-1

在我的应用程序中,我需要所有逻辑驱动器,包括映射的网络驱动器。无需以管理员身份运行即可正常工作。但我的应用程序默认以管理员身份运行,我无法映射网络驱动器。我知道它为什么会发生。

我正在使用DriveInfo.GetDrives()收集驱动器。

我的问题是,我可以在以管理员身份运行的应用程序中作为当前用户权限执行单个方法(收集所有映射的驱动器)吗?

或任何其他方式来收集所有网络驱动器。

提前致谢。

4

1 回答 1

0

您可以创建另一个没有管理员权限的应用程序,然后从您的主程序运行它。

Process.Start("myNormalApp.exe");

在“myNormalApp.exe”中放置驱动器映射代码。然后,您可以将映射的驱动器写入文件并在主应用程序中打开该文件。这有点复杂,但我认为这是唯一的方法。让我说,但是我无法想象您为什么说提升的应用程序无法访问网络驱动器(对我来说似乎有点奇怪)

该代码未经测试,但应该可以工作。

希望这可以帮助,

F白

于 2014-11-05T18:38:45.907 回答