WINRAR在制作绿色软件的运用
一.使用WINRAR制作单文件绿色软件
制作单文件绿色软件的方法有很多,如使用FILEPACKER等,这里介绍使用WINRAR怎样制作单文件绿色软件,之所有使用WINRAR制作,原因在于不会被杀毒软件查杀,运行后自动删除解压缩的文件,干净清爽,废话少说,LET'S GO!
选中要打包的所有文件-->鼠标右键"添加到压缩包"-->常规-->选中创建自解压-->高级-->自解压选项-->常规-->解压后运行中输入你要运行的程序名(注意使用相对路径)-->模式-->选中解压到临时文件夹,同时使用安静模式和覆盖模式[-->文字和图标-->图标中浏览选择刚才创建的ICO文件]-->确定-->确定
不过这里还得说明一点,很多小软件不需要注册控件,也不需要相应的注册表文件支持,所以制作时采用单文件绿色版比较好,有些文档等如WORD,EXCEL,ACCESS等也可以"制作"成EXE文件来执行(必须有相应的程序来执行),但是有些软件则需要注册表的支持或DLL注册才能运行,那么此时在"解压后运行"中不能直接输入要运行的程序名称,而必须使用批处理等方式在完成导入注册表或注册控件后再调用运行的程序即可.下面以创建Acrobat7单文件绿色版为例.
先在Acrobat7目录里创建一个GSETUP.BAT的批处理,然后在"解压后运行"里输入GSETUP.BAT即可,批处理内容如下:
@ECHO OFF
REM 1.设置运行环境
FOR /F "TOKENS=1,2 DELIMS=: " %%I IN ('CHCP') DO SET LAN=%%J
SET PATH=%CD%;%CD%\GTOOLS\;%PATH%
SET CPTMP=%CD%
CMDOW @ /DIS
ECHO SET CPTMP=%CPTMP%>CPTMP.BAT
BINSUB CPTMP.BAT \ \\ /I >NUL
CALL CPTMP.BAT
IF EXIST CPTMP.BAT DEL CPTMP.BAT /Q/F >NUL
CHCP %LAN% >NUL
REM 2.注册程序,因为7.X的AcroPDF.dll注册后浏览器不稳定,所以取消注册
TYPE GTOOLS\GREEN.SVR>GREEN.REG
BINSUB GREEN.REG "D:\\GREEN\\Adobe\\Acrobat 7.0" "%CPTMP%" /I >NUL
REGEDIT /S GREEN.REG >NUL
IF EXIST *.UBK DEL *.UBK /Q/F/S >NUL
IF EXIST GREEN.REG DEL GREEN.REG /Q/F/S >NUL
rem COPY /Y "Reader\Browser\nppdf32.dll" "%CommonProgramFiles%\..\Internet Explorer\PLUGINS\" >NUL
rem COPY /Y Reader\atl71.dll "%windir%\system32\" >NUL
rem regsvr32 /s "%CommonProgramFiles%\..\Internet Explorer\PLUGINS\nppdf32.dll" >NUL
rem regsvr32 /s ActiveX\AcroIEHelper.dll >NUL
rem regsvr32 /s ActiveX\AcroPDF.dll >NUL
rem regsvr32 /s ActiveX\pdfshell.dll >NUL
REM 3.启动并退出程序
START "" "%CPTMP%\Reader\AcroRd32.exe"
@ECHO OFF
EXIT
@ECHO OFF
REM 1.设置运行环境
FOR /F "TOKENS=1,2 DELIMS=: " %%I IN ('CHCP') DO SET LAN=%%J
SET PATH=%CD%;%CD%\GTOOLS\;%PATH%
SET CPTMP=%CD%
CMDOW @ /DIS
ECHO SET CPTMP=%CPTMP%>CPTMP.BAT
BINSUB CPTMP.BAT \ \\ /I >NUL
CALL CPTMP.BAT
IF EXIST CPTMP.BAT DEL CPTMP.BAT /Q/F >NUL
CHCP %LAN% >NUL
REM 2.注册程序,因为7.X的AcroPDF.dll注册后浏览器不稳定,所以取消注册
TYPE GTOOLS\GREEN.SVR>GREEN.REG
BINSUB GREEN.REG "D:\\GREEN\\Adobe\\Acrobat 7.0" "%CPTMP%" /I >NUL
REGEDIT /S GREEN.REG >NUL
IF EXIST *.UBK DEL *.UBK /Q/F/S >NUL
IF EXIST GREEN.REG DEL GREEN.REG /Q/F/S >NUL
rem COPY /Y "Reader\Browser\nppdf32.dll" "%CommonProgramFiles%\..\Internet Explorer\PLUGINS\" >NUL
rem COPY /Y Reader\atl71.dll "%windir%\system32\" >NUL
rem regsvr32 /s "%CommonProgramFiles%\..\Internet Explorer\PLUGINS\nppdf32.dll" >NUL
rem regsvr32 /s ActiveX\AcroIEHelper.dll >NUL
rem regsvr32 /s ActiveX\AcroPDF.dll >NUL
rem regsvr32 /s ActiveX\pdfshell.dll >NUL
REM 3.建立快捷方式
SC /F:"%USERPROFILE%\Application Data\Microsoft\Internet Explorer\Quick Launch\Acrobat Reader7.LNK" /A:C /T:"%CPTMP%\Reader\AcroRd32.exe" & CLS
IF "%LAN%"=="936" (
IF NOT EXIST "%ALLUSERSPROFILE%\「开始」菜单\程序\[◎GREEN◎]" MD "%ALLUSERSPROFILE%\「开始」菜单\程序\[◎GREEN◎]"
SC /F:"%ALLUSERSPROFILE%\「开始」菜单\程序\[◎GREEN◎]\Acrobat Reader7.LNK" /A:C /T:"%CPTMP%\Reader\AcroRd32.exe" & CLS
SC /F:"%ALLUSERSPROFILE%\桌面\Acrobat Reader7.LNK" /A:C /T:"%CPTMP%\Reader\AcroRd32.exe" & CLS )
IF "%LAN%"=="950" (
IF NOT EXIST "%ALLUSERSPROFILE%\「開始」菜單\程序\[◎GREEN◎]" MD "%ALLUSERSPROFILE%\「開始」菜單\程序\[◎GREEN◎]"
SC /F:"%ALLUSERSPROFILE%\「開始」菜單\程序\[◎GREEN◎]\Acrobat Reader7.LNK" /A:C /T:"%CPTMP%\Reader\AcroRd32.exe" & CLS
SC /F:"%ALLUSERSPROFILE%\桌面\Acrobat Reader7.LNK" /A:C /T:"%CPTMP%\Reader\AcroRd32.exe" & CLS)
IF "%LAN%"=="437" (
IF NOT EXIST "%ALLUSERSPROFILE%\「START」MENU\PROGRAM" MD "%ALLUSERSPROFILE%\「START」MENU\PROGRAM"
SC /F:"%ALLUSERSPROFILE%\「START」MENU\PROGRAM\[◎GREEN◎]\Acrobat Reader7.LNK" /A:C /T:"%CPTMP%\Reader\AcroRd32.exe" & CLS
SC /F:"%ALLUSERSPROFILE%\DESKTOP\Acrobat Reader7.LNK" /A:C /T:"%CPTMP%\Reader\AcroRd32.exe" & CLS)
CLS
REM 3.启动并退出程序
START "" "%CPTMP%\Reader\AcroRd32.exe"
@ECHO OFF
EXIT
[ Last edited by baomaboy on 2007-3-28 at 07:52 AM ]作者: HUNRYBECKY 时间: 2007-3-28 08:12 谢谢baomaboy兄,研究了下你的WINRAR制作的EXE,的确使用了HTML代码,但是对Default.sfx模块文件我修改的不多,如何把自己的图片加到界面中呢?我使用的是EXESCOPE修改,加不了呀,不知道你使用的是什么软件修改这个模块的。作者: baomaboy 时间: 2007-3-28 10:36
Quote:
Originally posted by HUNRYBECKY at 2007-3-28 08:12:
谢谢baomaboy兄,研究了下你的WINRAR制作的EXE,的确使用了HTML代码,但是对Default.sfx模块文件我修改的不多,如何把自己的图片加到界面中呢?我使用的 ...
[ Last edited by zh159 on 2007-3-28 at 12:28 AM ]作者: HUNRYBECKY 时间: 2007-3-28 22:32 谢谢几个大哥的回答,问题基本解决,我使用的是EXESCOPE,所以无法把界面在重新布局(只能调整位置),使用RESOURCEHACKER就完全可以加入自己的控件了,实在是强。