2012-04-06 85 views
0

我有一个VC++ EXE调用字母名称为“M”(M:\ server-ip \ sharename)的网络地图驱动器。基于业务,它将一些文件复制到网络共享文件夹并且工作正常。网络地图驱动器不可访问

问题是,当我使用Process.Start(startInfo)从.NET应用程序调用VC++ EXE时,网络映射驱动器抛出异常,说没有找到网络。

在一些用户PC甚至从.net应用程序调用工作正常。我们在sp1上使用.NET framework 3.5,OS是XP。请帮我解决这个问题。我甚至尝试使用CASPOL.exe来完全信任网络共享。

+0

你可以发布代码吗?也许有一个错误 – Rushil 2012-04-06 03:16:50

+0

代码来调用该exe ... string strCommand =“VC.exe”; System.Diagnostics.ProcessStartInfo procStartInfo = new System.Diagnostics.ProcessStartInfo(System.Windows.Forms.Application.StartupPath + strCommand); procStartInfo.RedirectStandardOutput = true; procStartInfo.UseShellExecute = false; procStartInfo.CreateNoWindow = true; System.Diagnostics.Process proc = new System.Diagnostics.Process(); proc.StartInfo = procStartInfo; proc.Start();它在一些个人电脑上工作正常,而不是在某些地方工作。 – user1316614 2012-04-06 04:49:10

回答

0

而不是启动您的VC++ EXE,您可以启动一个命令shell(cmd.exe)并查找网络驱动器是否存在。

如果没有,我会看你的程序和cmd.exe运行在哪个用户上下文,并确保它是同一个用户,并且这个用户有网络驱动器。