c# - 如何选择 dll
问题描述
小问题:如果从C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.6.1 引用 dll,应用程序如何在运行时链接/找到它?(或者在没有 VS 的情况下启动)?
它是来自 GAC 还是 dll 在运行时被复制到可执行位置?
解决方案
您使用 (4.6.1) 构建的框架必须安装在客户端 (GAC) 上才能运行。标准的普通 Windows 客户端/服务器。
如果您想在 EXE 中嵌入DLL,请查看Embedding DLLs in a compiled executable。
我强烈推荐使用 Costura.Fody - 迄今为止在您的程序集中嵌入资源的最佳和最简单的方法。它以 NuGet 包的形式提供。
Install-Package Costura.Fody
将其添加到项目后,它会自动将复制到输出目录的所有引用嵌入到主程序集中。您可能希望通过向项目添加目标来清理嵌入文件:
Install-CleanReferencesTarget
推荐阅读
- javascript - 如何从 setInterval 输出变量
- android-fragments - 带有 android 客户端交互的 kotlin 协程
- java - 在 java8 Collectors.toMap 中,keyMapper 的值应该来自另一个常量映射的键
- php - 行的php mysql编辑按钮
- dagger-2 - Dagger组件体
- c++ - 如何在 C++ 代码中运行多个线程
- laravel - 传递表单按钮数据
- ansible - 以特定用户身份在所有远程服务器上运行特定命令?
- ajax - 来自输入文本 Laravel 5.4 的动态数据
- java - 如何比较两个大的小数