用VC++6.0开发的软件,如果用InstallShield制作成安装软件包,当然是一种程序发布的传统方法,但是安装软件的安装和卸载都很麻烦。现在有很多软件都做成了免安装的绿色软件,比如最经典的植物大战僵尸,点开来就可以玩了。想请问论坛的各位高手,现在已经有一个编好的VC++6.0程序,如何将它做成免安装的绿色软件?
请给出详细的步骤,谢谢!

解决方案 »

  1.   

    都免安装了还做什么,直接winrar打包
      

  2.   

    如果用的是MFC的东西就没问题,如果用第三方的控件就不行,需要注册控件才行,比如用了a.ocx控件,用regsvr32 a.ocx这命令注册才行,否则不能运行.但可以做个批处理文件,比如b.bat,这个批处理文件的内容就是把regsvr32 a.ocx这条语句加进去,到时执行b.bat就行了,
      

  3.   

    hdg3707和heksn的回复比较靠谱。
    说用压缩软件的兄弟完全没弄清楚问题的实质。
    将生成的.exe文件直接拷贝到其他没有安装VC++6.0的计算机上,运行时会提示N多找不到的.dll文件,如果真把这些.dll文件搜集齐了,当然就可以直接压缩成一个文件了。在给分之前,想追问hdg3707和heksn一下,除了注册ocx外,如何找到运行所需的所有.dll文件?好多文件在网上是下不到的。
      

  4.   

    如果找不到DLL文件,程序肯定不能运行,只要能运行,就一定有相应的DLL文件,因此,可以把这个程序拿到从未安装过这个程序的计算机上运行,这时会提示缺少什么DLL文件,这样就可以知道需要什么DLL,等收集全DLL文件后,就把这些DLL文件和程序放到同一个目录里就可以运行了.只是OCX不行,如果事先不知道,只能通过安装盘,在安装过程中,看都安装什么文件,发现一个OCX就记下来,一般OCX都放在WINDOWS\SYSTEM32目录里,因此,可以先进入到这个目录里,这样等安装完后这个目录里增加什么文件就都知道了.我当初弄别人的一程序就是这么干的,最后找到都用了什么OCX控件和DLL文件了
      

  5.   

    不能用自定义控件和com等
    也不能写注册表
    因为这些东西不能在非受限用户下运行把Release版的压成压缩包就可以了
      

  6.   

    如果觉得找 dll麻烦的话
    把工程设为“在静态库中使用MFC”,这样就避免了打包