c# - 无法加载文件 System.Drawing.Common 但它不是我的参考资料的一部分
问题描述
由于英语不是我的母语,我会尽量清楚地解释自己。
我有一个针对 .NET Framework 版本 4.5.2 的 Visual Basic 旧项目,该项目有对 System.Drawing dll 的引用,但没有 System.Drawing.Common dll 引用,在我的开发 PC 上执行应用程序时它工作正常。
我的问题是,当我在没有安装.NET 的老板的要求下在我开始使用的虚拟机中执行它时,应用程序找不到对 System.Drawing.Common dll 的引用;我已经在虚拟机上安装了:
- .NET Compact Framework 2.0(因为我的老板告诉我它可能是一些更旧的 dll)
- .NET Compact Framework 3.5(因为它与 2.0 版本一起使用)
- Windows 桌面运行时 3.0.3(因为我发现一些链接说 dll 是 .NET Core 的一部分)
- Windows 桌面运行时 3.1.3(以防万一)
并且尝试安装任何 .NET 4.x 版本告诉我它已经安装,因为操作系统是 Windows 10。
由于这似乎不起作用,我还将 System.Drawing.Common.dll 的副本直接放在可执行目录中,并修改了项目以在 AssemblyResolve 事件触发时加载它。但它仍然无法正常工作,而且如果我的 dll 和 exe 都没有引用它,我也无法理解为什么它会请求该程序集。
我试图在没有开发人员工具的情况下保留虚拟机,所以我不确定还能做什么。如果有人知道我的问题是什么,将不胜感激。谢谢你。
编辑:在我脑海中产生更多噪音的是:如果 System.Drawing.Common 是 .NET 的 dll,它不应该在需要时自动加载到任何 .NET 应用程序吗?或者至少可以恢复,因为我已经将 dll 放在与应用程序的 .exe 文件相同的文件夹中
解决方案
推荐阅读
- java - 将列表转换为地图
- logic - 用 OR 和 NOT 创建 AND 表达式
- angular - 使用 JEST 运行 Angular 组件测试给出了找不到模块
- themes - PhpStorm 更改单元测试工具栏颜色
- javascript - 表的 SAPUI5 数据绑定不起作用
- bash - 如何使用 sed 替换“word{word”或“word}word”
- angular - 特定组件的Angular 6单元测试错误
- git - 有什么方法可以从 `index` 和 `objects` 恢复 git 提交(或完整的 repo)?
- rest - 在未经身份验证的情况下使用 SPA 时保护 REST API 的使用
- python-3.x - 在python tkinter中恢复画布上已删除的图片