(1) 我的C#程序调用了外部的dll,怎么把这些dll打包才能保证用户计算机上能够被正确调用?(本人开发的时候dll放在system32下面)(2).net framewrok问题,怎么判断用户计算机上是否安装了.net framwork?如果没有安装,该怎么打包?谢谢

解决方案 »

  1.   

    1.安装时使用regsvr32 注册dll
    2.ref:http://www.microsoft.com/china/community/program/originalarticles/techdoc/deployNETApp.mspx
      

  2.   

    关于注册dll,能否说的详细一些呢?具体怎么操作的,谢谢啊!
      

  3.   

    你把那个dll放在你项目的debug文件夹里面
    然后打包进去就行了
      

  4.   

    用pluginInstaller.msi打包.net framewrok个人意见,供参考。
      

  5.   

    放在debug下面是可以打包进去,但是不幸的是安装以后,用户计算机显示找不到dll啊, 除非修改path路径
      

  6.   

    to (2).net framewrok问题,怎么判断用户计算机上是否安装了.net framwork?如果没有安装,该怎么打包?http://blog.csdn.net/tjvictor/archive/2006/12/14/1443141.aspx
      

  7.   

    to (1) 我的C#程序调用了外部的dll,怎么把这些dll打包才能保证用户计算机上能够被正确调用?(本人开发的时候dll放在system32下面)我一般都是把所需要的dll放在自己的程序安装目录下,在“安装和部署”中可以把需要的dll加到自己的项目中,与程序一起安装部署的。
      

  8.   

    如果你用visual studio 2005这些问题都能解决
      

  9.   

    1.在部署安装时,把DLL加到“ 程序文件夹”里就可以了,如果不行的话,楼主可以考虑在程序中添加DLL引用。
    2.如果用VS 2005打包,在部署安装时,程序会自己检测信赖项,在安装时,安装包也会自动检测信赖项是否具备,像.NET FRAMEWORK,如果没有先装,则安装包会有一个提示,请先安装.NET FRAMEWORK等信息,可以用INSTALLSHEID打包,来避免这个问题
      

  10.   

    在项目里面添加现有项,把那个dll加进去,然后修改其属性为总是复制,这样在你生成程序的时候这个dll也有了,你做安装的时候选择项目输出应该就可以了。