网络驱动器不提供启动
我具有在启动时加载一个C#应用程序,和日志数据到网络驱动器,其被安装为X:网络驱动器不提供启动
当计算机首次引导时,应用程序引发错误是X :\不可用。如果我重新启动应用程序,同样的错误。
但是,如果我打开Windows资源管理器并双击浏览驱动器,我就可以运行应用程序,它将连接到X:就好。
尽管被映射,网络驱动器在启动时是否不会自动初始化?有没有办法将它们设置为自动初始化?
我有完全相同的问题。我不知道是否有更好的方法,但是我在访问映射驱动器之前将其添加到我的代码中。
Process mapDrive = new Process();
mapDrive.StartInfo.FileName = "net.exe";
mapDrive.StartInfo.Arguments = @"use c: \\server\share";
mapDrive.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
mapDrive.Start();
这样,无论启动时驱动器是否可用,它都将始终可用。
+1自己映射它也应该工作。 – 2012-04-05 14:21:13
这可以工作,但是目录的路径需要输入到配置文件中,然后在启动时读入。它可能位于网络驱动器或本地驱动器上。在尝试安装之前,我需要检查它是本地还是网络。这有点乱。在Windows中没有办法自动安装驱动器吗? – 2012-04-05 14:43:38
“窗户上没有办法自动安装驱动器吗?”......如果有,我也想知道。 – 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链接。
基于网络连接,启动系统时需要一段时间才能映射和连接。您可能需要增加时间或增加功能等待并检查网络是否已映射,并且只有在超过设定的阈值或时间时才抛出错误。 – 2012-04-05 13:55:03
@rs:我已经尝试了10分钟以上的等待,而且它似乎没有映射过它们。 – 2012-04-05 14:16:10