0

古いvb.netコードを実行しようとしていますが、このエラーで壊れます(System.Reflection.TargetInvocationExceptionを除く)。トレースログは次のとおりです。

   Source="mscorlib"   StackTrace:
   à System.RuntimeMethodHandle._SerializationInvoke(Object target, SignatureStruct& declaringTypeSig, SerializationInfo info, StreamingContext context)
   à System.Runtime.Serialization.ObjectManager.CompleteISerializableObject(Object obj, SerializationInfo info, StreamingContext context)
   à System.Runtime.Serialization.ObjectManager.FixupSpecialObject(ObjectHolder holder)
   à System.Runtime.Serialization.ObjectManager.DoFixups()
   à System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler handler, __BinaryParser serParser, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)
   à System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)
   à System.Resources.ResourceReader.DeserializeObject(Int32 typeIndex)
   à System.Resources.ResourceReader.LoadObjectV2(Int32 pos, ResourceTypeCode& typeCode)
   à System.Resources.RuntimeResourceSet.GetObject(String key, Boolean ignoreCase, Boolean isString)
   à System.Resources.ResourceManager.GetObject(String name, CultureInfo culture, Boolean wrapUnmanagedMemStream)
   à JMF.MDIContainer.InitializeComponent() dans C:\JMF\SOURCES\JMF\Menu.vb:ligne 160
   à JMF.MDIContainer..ctor() dans C:\JMF\SOURCES\JMF\Menu.vb:ligne 73
   à JMF.MDIContainer.Main() dans C:\JMF\SOURCES\JMF\Menu.vb:ligne 187
   à System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
   à Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
   à System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   à System.Threading.ThreadHelper.ThreadStart()

行#160は、このタスクを実行しますMe.ImageList1.ImageStream = CType(resources.GetObject( "ImageList1.ImageStream")、System.Windows.Forms.ImageListStreamer)

コメントすると、この行の原因が原因だと思いますが、すべてうまくいきます。どうすればこれを修正できますか?

4

1 に答える 1

1

これは、問題を引き起こしているステートメント内の式です

resources.GetObject("ImageList1.ImageStream")

スタック トレースに基づいて、ImageList1.ImageStreamリソースに問題があるようです。存在しますが、逆シリアル化コードはそれを適切に処理できません。

実際のリソースを見ないと、何が問題なのかを言うのは難しいです。最初のステップは、Visual Studio でリソースをロードして、破損しているかどうかを確認することです。そうでない場合は、ストック イメージ リストに置き換えて、問題が解決するかどうかを確認してください (リソースが悪いことを示している可能性があります)。

于 2013-03-11T06:28:38.557 に答える