我在程序中运行服务主机作为后台线程。当我在我的Visual Studio中运行它时,它可以完美地打开处理它并返回结果的文件。当我作为编译的exe在计算机上安装它时,它在读取输入文件时失败,并出现以下错误。
[RCR.VDS.exe] - [Info] - [2/11/2011 8:06:56 AM] - 已加载VSM数据库服务器。 [RCR.VDS.exe] - [错误] - [2/11/2011 8:07:05 AM] - 导入文件时出错 [RCR.VDS.exe] - [错误] - [2/11/2011 8:07:05 AM] - System.ArgumentNullException:Path不能为null。 参数名称:路径 at System.IO.FileStream.Init(String path,FileMode mode,FileAccess access,Int32 rights,Boolean useRights,FileShare share,Int32 bufferSize,FileOptions options,SECURITY_ATTRIBUTES secAttrs,String msgPath,Boolean bFromProxy,Boolean useLongPath) at System.IO.FileStream..ctor(String path,FileMode mode,FileAccess access,FileShare share,Int32 bufferSize,FileOptions options,String msgPath,Boolean bFromProxy) 在System.IO.FileStream..ctor(字符串路径,FileMode模式,FileAccess访问,FileShare共享) 在RCR.Simulation.Serializer.DeSerializeVehDef(String filename)
我尝试将文件的权限设置为Everyone =完全访问权限并以管理员身份运行程序,但没有解决问题。有没有人知道问题可能是什么?涉及的所有机器都是Win 7 64位。 谢谢你的帮助。
答案 0 :(得分:0)
在这种情况下看起来该文件的路径为空。 Init由FileStream类的构造函数调用(除其他外)。 “path”参数应具有包含文件位置的有效字符串。使用调试器,日志记录或WCF跟踪来帮助您找出路径为空的原因。