1、我现在有一个主程序和一个VB做的Dll文件,我虽然能用,打发到另一台电脑上就不能用了。对方又不懂手工注册,装程序又太大我无法发给他。现在不知道怎么办?2、似乎Dll文件在我的电脑上先安装到系统目录,程序再选系统目录的DLL文件,然后打包给别人安装才有用。我怎么也不能把Dll文件放在程序目录下,通过引用-?浏览来选Dll文件,然后打包,让别人安装,Dll文件就无法找不到。似乎这样程序就认死了绝对路径。不知道如何解决?

解决方案 »

  1.   

    把DLL文件放到程序目录下就行了你本机引用随便在哪引都行
      

  2.   

    我用的是SetupBuilder Professional 1.5sc,我安装的时候把Dll安装到windows目录下。就不知道为什么我无法实现任意引用。如果不装到windows系统目录下总是提示“ActiveX 部件不能创建对象”
      

  3.   

    To:对方是安装了,不过我现在是把Dll文件修改了。
      

  4.   

    手工注册
    在开始§运行中
    regsvr32 "dll文件绝对路径"
      

  5.   

    把dll文件放到掉用它的程序的目录里面
      

  6.   

    问题解决了。有一点,我Dll工程属性设置为“工程兼容”,现在我改为“二进制兼容”,这样就不会每次编译都改变Dll的GUID。以前还不知道这个问题。只要对方目录位置不变或改名,他第一次安装以后,我以后修改了Dll文件直接发给它覆盖就可以了。
    还有发现用户特别喜欢给程序目录移动或者改名,这样程序找不到DLL文件了。有些安装程序移动目录时Windows就会提示这会影响注册表注册,这样用户就不会轻易去移动目录。不知道怎样才会使当用户改名表或者移动目录的时候让Windows提示。