在VS中用C#写了个类库,后面想转成静态库发现没有直接的方法,原来在C++中可以,而C#中不支持。

但是有时候程序引用C#编写的动态库觉得用户体验不好太累赘,想要简单只发一个exe可执行程序给用户就好,该怎么解决?

经过我研究,找到了如下的方法:(VS编译器)

  1. 在VS中安装Nuget扩展
  2. 打开要静态化的EXE项目
  3. 打开Nuget为目标EXE工程安装Costura.Fody。
  4. 重新构建项目,完成。这时候的exe可以直接发给对方而不需要附带发dll了。

具体步骤如下:

安装NuGet扩展

  要使用NuGet首先需要安装它(在安装了MVC3的系统上已自动安装了NuGet)

  1. 点击 工具-->扩展管理器(R)...-->右上角搜索框输入NuGet

  2. 点击 NuGetPackage Manager 项上面的下载按钮开始下载NuGet

  3. 下载完成后出现安装页面,点安装开始安装

  4. 很快安装完成,然后点击关闭完成整个安装

  5. 安装完后NuGet暂时不能用,需要重新启动下VS才行,重启后完毕后打开 扩展管理器(R)... 在已安装的扩展里可以看到NuGet Package Manager已经安装好了

  使用NuGet下载需要的类库

  1. 打开NuGet管理界面

  2. 出现如下界面,可以在里面找自己想要的类库也可以在右上角搜索里面输入关键字查找自己想要的类库,找到合适自己的类库后点install进行安装

  3. 这里我们选择安装Json.Net,点击安装好出现组件下载界面

  4. 下载完成后会出现提示将类库安装到什么项目,这里我们选择安装到TestConsole项目

  5. 安装完成后可以看到已经安装的Josn.Net显示一个已安装的小对勾

  6. 打开项目引用可以看到我们刚选择的类库Newtonsoft.Json已经自动添加到项目引用中

参考地址:http://kb.cnblogs.com/page/143190/

     http://www.cnblogs.com/instance/p/4863811.html

最新文章

  1. jvm系列(二):JVM内存结构
  2. div 自动满屏
  3. 如何在 CentOS 中设置 NTP 服务器
  4. 转】启动tomcat时 错误: 代理抛出异常 : java.rmi.server.ExportException: Port already in use: 1099的解决办法
  5. Android设计模式系列-单例模式
  6. Matlab与DSP联合开发
  7. C程序设计的抽象思维-算法分析-大多数元素
  8. JSONP跨域的原理解析及其实现介绍
  9. Qt原始资源形象问题后删除
  10. Android之ListView异步加载图片且仅显示可见子项中的图片
  11. 其他—cooki和session
  12. php中sql语句常见错误
  13. SpringDataJpa的批量 保存 修改 操作
  14. gdb调试技巧 找到php执行进程当前执行的代码
  15. 人生苦短,我用python,为什么选择python,python简介
  16. [Go] 跨平台文件系统监控工具 fsnotify 应用举例
  17. 基于CSS3飘带状3D菜单 菜单带小图标
  18. jira-source--plugin
  19. python RSA加密解密及模拟登录cnblog
  20. STL容器:deque双端队列学习

热门文章

  1. 《Nginx高性能Web服务器详解》
  2. Model View Controller(MVC) in PHP
  3. javascript基础 方法
  4. 九度oj 题目1348:数组中的逆序对
  5. Git使用规范流程(转载)
  6. [HAOI2007] 理想的正方形 (单调队列)
  7. P2622 关灯问题II (状态压缩,最短路)
  8. JDBC链接mysql,时间时0000-00-00 00:00:00时报错
  9. Codevs 1010 过河卒== 洛谷 1002
  10. XML布局文件于Java代码使用问题