网络驱动器不提供启动

网络驱动器不提供启动

问题描述:

我具有在启动时加载一个C#应用程序,和日志数据到网络驱动器,其被安装为X:网络驱动器不提供启动

当计算机首次引导时,应用程序引发错误是X :\不可用。如果我重新启动应用程序,同样的错误。

但是,如果我打开Windows资源管理器并双击浏览驱动器,我就可以运行应用程序,它将连接到X:就好。

尽管被映射,网络驱动器在启动时是否不会自动初始化?有没有办法将它们设置为自动初始化?

+0

基于网络连接,启动系统时需要一段时间才能映射和连接。您可能需要增加时间或增加功能等待并检查网络是否已映射,并且只有在超过设定的阈值或时间时才抛出错误。 – 2012-04-05 13:55:03

+0

@rs:我已经尝试了10分钟以上的等待,而且它似乎没有映射过它们。 – 2012-04-05 14:16:10

我有完全相同的问题。我不知道是否有更好的方法,但是我在访问映射驱动器之前将其添加到我的代码中。

Process mapDrive = new Process(); 
mapDrive.StartInfo.FileName = "net.exe"; 
mapDrive.StartInfo.Arguments = @"use c: \\server\share"; 
mapDrive.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; 
mapDrive.Start(); 

这样,无论启动时驱动器是否可用,它都将始终可用。

+1

+1自己映射它也应该工作。 – 2012-04-05 14:21:13

+0

这可以工作,但是目录的路径需要输入到配置文件中,然后在启动时读入。它可能位于网络驱动器或本地驱动器上。在尝试安装之前,我需要检查它是本地还是网络。这有点乱。在Windows中没有办法自动安装驱动器吗? – 2012-04-05 14:43:38

+0

“窗户上没有办法自动安装驱动器吗?”......如果有,我也想知道。 – JimDel 2012-04-05 15:00:43

查看How Can I Access a Mapped Network Drive这里SO上列出了要检查的事情。我的猜测是你的用户不存在该驱动器,或者存在访问该驱动器的权限问题。另一项要检查的是order in which you call Impersonate,假设你这样做,那就是。

根据Cannot Access Files On Mapped Drive From Windows Service你不应该这样做。请参阅接受答案中提供的Microsoft链接。