vs2010程序在win7上可以运行,在xp上不能运行解决办法
vs2010程序在win7上可以运行,在xp上不能运行
用vs2010编写的程序,在win7下运行良好,在xp下存在问题,并且已经安装Framework v4.0.30319, 请高手指点
在program.cs中加上try catch 语句,捕获到如下异常:
Exception has been thrown by the target of an invocation
去掉try catch 语句,在事件查看器中看到如下信息:
Application: DtuServer.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.Reflection.TargetInvocationException
Stack:
at System.RuntimeMethodHandle._SerializationInvoke(System.IRuntimeMethodInfo, System.Object, System.SignatureStruct ByRef, System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext)
at System.Runtime.Serialization.ObjectManager.CompleteISerializableObject(System.Object, System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext)
at System.Runtime.Serialization.ObjectManager.FixupSpecialObject(System.Runtime.Serialization.ObjectHolder)
at System.Runtime.Serialization.ObjectManager.DoFixups()
at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(System.Runtime.Remoting.Messaging.HeaderHandler, System.Runtime.Serialization.Formatters.Binary.__BinaryParser, Boolean, Boolean, System.Runtime.Remoting.Messaging.IMethodCallMessage)
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(System.IO.Stream, System.Runtime.Remoting.Messaging.HeaderHandler, Boolean, Boolean, System.Runtime.Remoting.Messaging.IMethodCallMessage)
at System.Resources.ResourceReader.DeserializeObject(Int32)
at System.Resources.ResourceReader._LoadObjectV2(Int32, System.Resources.ResourceTypeCode ByRef)
at System.Resources.ResourceReader.LoadObjectV2(Int32, System.Resources.ResourceTypeCode ByRef)
at System.Resources.ResourceReader.LoadObject(Int32, System.Resources.ResourceTypeCode ByRef)
at System.Resources.RuntimeResourceSet.GetObject(System.String, Boolean, Boolean)
at System.Resources.RuntimeResourceSet.GetObject(System.String, Boolean)
at System.Resources.ResourceManager.GetObject(System.String, System.Globalization.CultureInfo, Boolean)
at System.Resources.ResourceManager.GetObject(System.String)
at DtuServer.FormMain.InitializeComponent()
at DtuServer.FormMain..ctor()
at DtuServer.Program.Main()
------解决思路----------------------
看一下窗口的Icon字段是不是设置了图片,导致加载不成功
改成动态加载:
try
{
this.Icon = new System.Drawing.Icon(Application.StartupPath + @"\123.ico");
}
catch
{ }
用vs2010编写的程序,在win7下运行良好,在xp下存在问题,并且已经安装Framework v4.0.30319, 请高手指点
在program.cs中加上try catch 语句,捕获到如下异常:
Exception has been thrown by the target of an invocation
去掉try catch 语句,在事件查看器中看到如下信息:
Application: DtuServer.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.Reflection.TargetInvocationException
Stack:
at System.RuntimeMethodHandle._SerializationInvoke(System.IRuntimeMethodInfo, System.Object, System.SignatureStruct ByRef, System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext)
at System.Runtime.Serialization.ObjectManager.CompleteISerializableObject(System.Object, System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext)
at System.Runtime.Serialization.ObjectManager.FixupSpecialObject(System.Runtime.Serialization.ObjectHolder)
at System.Runtime.Serialization.ObjectManager.DoFixups()
at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(System.Runtime.Remoting.Messaging.HeaderHandler, System.Runtime.Serialization.Formatters.Binary.__BinaryParser, Boolean, Boolean, System.Runtime.Remoting.Messaging.IMethodCallMessage)
at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(System.IO.Stream, System.Runtime.Remoting.Messaging.HeaderHandler, Boolean, Boolean, System.Runtime.Remoting.Messaging.IMethodCallMessage)
at System.Resources.ResourceReader.DeserializeObject(Int32)
at System.Resources.ResourceReader._LoadObjectV2(Int32, System.Resources.ResourceTypeCode ByRef)
at System.Resources.ResourceReader.LoadObjectV2(Int32, System.Resources.ResourceTypeCode ByRef)
at System.Resources.ResourceReader.LoadObject(Int32, System.Resources.ResourceTypeCode ByRef)
at System.Resources.RuntimeResourceSet.GetObject(System.String, Boolean, Boolean)
at System.Resources.RuntimeResourceSet.GetObject(System.String, Boolean)
at System.Resources.ResourceManager.GetObject(System.String, System.Globalization.CultureInfo, Boolean)
at System.Resources.ResourceManager.GetObject(System.String)
at DtuServer.FormMain.InitializeComponent()
at DtuServer.FormMain..ctor()
at DtuServer.Program.Main()
------解决思路----------------------
看一下窗口的Icon字段是不是设置了图片,导致加载不成功
改成动态加载:
try
{
this.Icon = new System.Drawing.Icon(Application.StartupPath + @"\123.ico");
}
catch
{ }