我正在将我的程序复制到虚拟机上,以查看我需要哪些软件,以及需要启用(或禁用)哪些设置。我的程序在我的工作笔记本电脑和我自己的笔记本电脑(旧版本)上运行良好,但是在VM上,程序在运行时抛出一个错误。
我的程序由一个可执行文件和多个DLL组成,可执行程序和DLL都可以很好地启动,包括使用依赖项system.drawing.common。但是其中一个DLL中的一个类会出现一个错误,即无法加载依赖项system.drawing.common。重新生成所讨论的DLL不会给出错误的警告。我看到的错误见下图。
akka://ModulairVisionFramework/user/AcquireImageActor
ERRORThread 0006>不能加载文件吗?或汇编'System.Drawing.Common,Version=4.0.2.0,Culture=neutral,>PublicKeyToken=cc7b13ffcd2ddd51‘。系统找不到指定的文件。原因: System.IO.FileNotFoundException:无法加载文件或程序集>'System.Drawing.Common,Version=4.0.2.0,Culture=neutral,>PublicKeyToken=cc7b13ffcd2ddd51‘。系统找不到指定的文件。文件名: CameraSystem.Actors.AcquireImageActor.<.ctor>b__2_0(AcquireImage resp上的'System.Drawing.Common,Version=4.0.2.0,Culture=neutral,>PublicKeyToken=cc7b13ffcd2ddd51‘at lambda_method(闭包,Object,Action
1 ) at Akka.Tools.MatchHandler.PartialHandlerArgumentsCapture2.2.Handle(T >value) at Akka.Actor.ReceiveActor.ExecutePartialMessageHandler(Object message,>partialAction’1 partialAction) at Akka.Actor.ReceiveActor.OnReceive(Object message) at Akka.Actor.UntypedActor.Receive(Object message) at Akka.Actor.ActorBase.AroundReceive(接收接收,对象消息)在Akka.Actor.ActorCell.ReceiveMessage(对象消息)在Akka.Actor.ActorCell.Invoke(信封)
主要的可执行文件和DLL的接口都使用system.drawing.common的原因是什么,但是这个DLL中的类不能使用依赖项?如何解决这个问题呢?到目前为止,我还没有在我的工作笔记本电脑或其他计算机(我的应用程序的旧版本,但仍然使用system.drawing.common)上遇到这个问题。
在两个可执行项目中编辑,就像在所讨论的DLL中一样,我正在为system.drawing.common使用NuGet包管理器。如何将一揽子方案包括在内:
<PackageReference Include="system.drawing.common" Version="4.6.0" />发布于 2019-12-18 11:12:26
一周前我遇到了同样的问题。如果这是一个.NET核心程序集,那么引用它的方式会产生很大的不同。不要直接引用.NET库(右键单击->添加引用),而是在项目文件中使用包引用:
<PackageReference Include="System.Drawing.Common" Version="4.6.0" />https://stackoverflow.com/questions/59390508
复制相似问题