ini文件示例说明

Myinstall 脚本使用说明

setup.exe 为安装文件。 uninstall.exe 为卸载文件。 setup.bmp 为 setup.exe 调用的logo,大小为48×48象素,若无则使用内置logo。 setup.ini 为 setup.exe 使用的安装配置文件。 所有的安装模块都以子目录方式存放,每个子目录下使用 mpcplugin.ini 文件(可自定义文件名)进行配置,setup.exe会自动识别。 setup.exe 可以使用 /s、/S、-s 或 -S 参数无人值守安装(大写时不显示运行界面)。

setup.ini 文件格式说明如下: _________________________________________ [main] name=Media Player Classic 精品版 readme=readme.txt progdir=#progdir#\Media Player Classic id=mympc exit=1 BrandingText=Silence 制作 ininame=mpcplugin.ini _________________________________________ 一、[main] 1、name=Media Player Classic 精品版 此行表示安装程序的名称 2、readme=readme.txt setup.exe 在运行时显示 readme.txt 文件内容。可以使用 RTF 格式文件,如: readme=readme.rtf 3、progdir=#progdir#\Media Player Classic 表示默认的安装路径,#progdir#为预定义的公用变量,代表 x:\Program Files 目录,其它还有一下公用变量,在后面讲。 4、id=mympc 表示此安装程序所安装软件的标识符,和 mpcplugin.ini 中的 id 含义一样,便于将来升级时使用。 5、exit=1 1 表示安装后自动退出,0 不退出。 6、BrandingText=Silence 制作 自定义 setup.exe 界面下方横线左端显示的字符串。 7、ininame=myinstall.ini 组件脚本文件名称,默认为 mpcplugin.ini。

如: 二、[setup_run]/[uninstall_run] [setup_run] #sysdir#\imetool.exe/?#sysdir#=afteralwaysnowaitshow #sysdir#\notepad.exe#sysdir#=beforealwayswaithide [uninstall_run] #sysdir#\imetool.exe/?=afteralwaysnowaitshow #sysdir#\notepad.exe=beforealwayswaithide 全局安装、卸载前后运行程序(旧版本运行功能取消)。用以控制安装、卸载前后运行的程序。 等号左边分为三部分,为命令行、参数和运行时路径,用分割。参数和运行时路径均可省略。注:若省略参数而需指定运行时路径时,参数前的分割符不能省略,即须使用两个连续的“”。举例如下: #sysdir#\notepad.exe#sysdir#=beforealwayswaithide 等号右边分为四部分,用分割。 第一部分可用值为 before 和 after,分别代表在安装前还是安装后运行。 第二部分可用值为 always 和 normal,always 表示即使在静默安装下也运行此程序。 第三部分可用值为 wait 和 nowait,分别表示运行外部程序后等待结束后再返回和立即返回。 第四部分可用值为 show 和 hide,表示运行外部程序时显示或隐藏其界面。 三、[language] 1、charset=134 代表所需字符集,134 为简体中文、136 为繁体中文、0 为英文等。 2、height=-12 表示字体高度,-12相当于9号字。 3、font=宋体 字体名字 4、其它部分可自行用相应语言填写。

mpcplugin.ini 文件格式说明如下: _________________________________________ [main] name=vobsub title=vobsub 字幕插件 content=vobsub 字幕插件 author=Silence date=2003.10.18 checked=1 reg=reg.reg reg98=98.reg reg2000=2000.reg unreg=unreg.reg unreg98=un98.reg unreg2000=un2000.reg mutex=xxx,aaa id=mympc pri=file [file] unrar.dll,0=#sysdir#,0 *.txt,0=#setupdir#,2 ?.exe,1=c:\ [98] DVobSub.ax,1=#setupdir#\Codecs,1 VOBSUB.DLL,0=#setupdir#\Codecs,0 [2000] VSFilter.dll,1=#setupdir#\Codecs [shortcut] [shortcut2000] vobsub 设置PROGRAMS#setupname#=#sysdir#\rundll32.exetest.ico0"#setupdir#\Codecs\vsfilter.dll",DirectVobSub [shortcut98] vobsub 设置PROGRAMS#setupname#=#sysdir#\rundll32.exetest.ico0"#setupdir#\Codecs\dvobsub.ax",configure [detect] rootkey=HKEY_LOCAL_MACHINE subkey=SOFTWARE\Classes\CLSID\{0180E49C-13BF-46DB-9AFD-9F52292E1C22} valuename= valuedata= [system.ini] driver32,VIDC.XVID=xvid.dll [dir] #setupdir#\codecs= [dir98] c:\test= [dir2000] #progdir#\test= [setup_run] #sysdir#\imetool.exe/?=alwaysnowaitshow #sysdir#\notepad.exe=alwayswaithide [uninstall_run] #sysdir#\imetool.exe/?=afteralwaysnowaitshow #sysdir#\notepad.exe=beforealwayswaithide _________________________________________ 一、[main] 小节 0、name=vobsub      *新增,为保持不同语言组件兼容性,建议使用。 表示本组件的标识符,强烈建议使用英文字母,不区分大小写。 1、title=vobsub 字幕插件 表示本组件的名称为“vobsub 字幕插件”。 2、content=vobsub 字幕插件 部件说明 3、author=Silence 打包制作者 4、date=2003.10.18 制作日期 5、checked=1 0表示本组件默认不安装,1表示默认安装,2表示必须安装。 6、reg=reg.reg 表示安装时要导入的注册表内容,在reg.reg文件中可以使用预定义公用变量,下同。 reg98=98.reg 表示 Win9x 系统下需要导入的注册表内容。 reg2000=2000.reg 表示 NT/2000/XP 系统下需要导入的注册表内容。 7、unreg=unreg.reg 卸载时使用的注册表内容。 unreg98=un98.reg 表示在 Win9x 系统下卸载时需要删除的注册表内容。 unreg2000=un2000.reg 表示在 NT/2000/XP 系统下卸载时需要删除的注册表内容。 8、mutex=xxx,aaa       *修改定义 表示不能与本组件同时安装的组件,用,分隔。xxx 和 aaa 代表其它组件中的标识符,即 name=xxx 这一行中等号右边的内容,如果此行不存在,则以 title=xxx 一行等号右边的内容代替。 9、run=x:\xxx\xxx.exe/d 表示安装结束后要运行的程序,使用绝对路径。在使用 /s 参数安装时无效。 10、pri=file 表示安装组件时先复制文件再导入注册表项目,如无此小节或内容为空,则先导入注册表再复制文件。 11、id=mympc 表示此安装程序所安装软件的标识符,和 mpcplugin.ini 中的 id 含义一样,便于将来升级时使用。 二、[file] 小节 demo\unrar.dll,0=#sysdir#,0 此节为要复制的文件,unrar.dll,0=#sysdir#表示将当前目录下的unrar.dll文件复制到windows\system(98)/window(winnt)\system32目录下,#sysdir#代表公用变量。 等号左边分为三部分,第一部分表示源文件,可包括当前目录下的相对路径,可使用通配符*和?。第二部分表示目标文件,不包含路径,本部分可省略(若第一部分使用通配符则必须省略第二部分)。第三部分为1表示该文件需要使用regsvr32.exe注册,0则不需要。 等号右边分为两部分,第一部分表示目标文件路径,可包含公用变量。 第二部分含义如下可取值为 0、1、2(省略则默认为 0): 0  表示安装前比较源文件和目的文件,只有源文件版本比目的文件新时才会覆盖(如果版本相同则比较文件创建日期)。 1  表示如果目的文件存在则不覆盖。 2  表示无论何时均覆盖目的文件。 [98][2000] 此二节作用与[file]一节基本相同,所不同的是[98]节的内容只在win9x系统上安装,[2000]节的内容只在nt/2000/xp上安装。 三、[shortcut] 小节 vobsub 设置PROGRAMS#setupname#=#sysdir#\rundll32.exe"#setupdir#\Codecs\vsfilter.dll",DirectVobSub 本节用以创建快捷方式。 等号左边分为五部分,用分隔。第一部分代表快捷方式名称。第二部分代表快捷方式起始位置(桌面、开始菜单之类),用预定义好的变量来表示。第三部分表示快捷方式在第二部分基础上的子目录,可选(#setupname# 只能在此部分使用。第四部分表示要使用的图标资源文件,第五部分表示图标索引号,0代表资源中第一个图标。注意:第四部分和第五部分应同时使用(或者不使用),否则程序判断会出问题。 等号右边分为三部分,用分隔。第一部分表示快捷方式的执行文件,包括路径。第二部分为执行路径。第三部分为执行参数。若没有参数,第二部分路径可以省略;若有参数则必须写明第二部分即路径。 [shortcut98][shortcut2000]的作用和[shortcut]类似,只是分别在win9x和nt/2000/xp下有效。 四、[detect] 小节 rootkey=HKEY_LOCAL_MACHINE subkey=SOFTWARE\Classes\CLSID\{0180E49C-13BF-46DB-9AFD-9F52292E1C22} valuename= valuedata= file=#setupdir#\mplayerc.exe 此节的作用是检测已经安装的组件在注册表中写入的值,如果找到则该组件显示为粗体红色,并自动取消选中。 rootkey=HKEY_LOCAL_MACHINE 表示根键 subkey=SOFTWARE\Classes\CLSID\{0180E49C-13BF-46DB-9AFD-9F52292E1C22} 表示子键 valuename= 表示键名 valuedata= 表示键值 注意:目前暂时只能检测字符串类型的键值。 file=#setupdir#\mplayerc.exe 此节检测已安装的文件。 五、[system.ini] 小节   *只适用于 Win9x 为兼容 Win9x,特增加此节内容。表示在 Win9x 的系统配置文件 system.ini 中增加的项目。 driver32,VIDC.XVID=xvid.dll 逗号前面的内容表示小节名称,逗号后面的内容为在此小节增加的内容,支持公用变量。 六、[dir]小节 [dir] #setupdir#\codecs= 此小节的作用是创建等号左边部分的目录。 [dir98][dir2000] 此两小节的功能分别是在 Win9x 和 2000/xp 系统下创建目录。 七、组件安装后、卸载前运行指定程序(旧版本运行功能取消)。 组件脚本中新增 [setup_run] 和 [uninstall_run] 小节,用以控制组件安装后和卸载前运行的程序。 [setup_run] #sysdir#\imetool.exe/?#sysdir#=alwaysnowaitshow #sysdir#\notepad.exe=alwayswaithide [uninstall_run] #sysdir#\imetool.exe/?=alwaysnowaitshow #sysdir#\notepad.exe=alwayswaithide 等号左边分为三部分,为命令行、参数和运行时路径,用分割。参数和运行时路径均可省略。注:若省略参数而需指定运行时路径时,参数前的分割符不能省略,即须使用两个连续的“”。举例如下: #sysdir#\notepad.exe#sysdir#=beforealwayswaithide 等号右边分为三部分,用分割。 第一部分可用值为 always 和 normal,always 表示即使在静默安装下也运行此程序(注:此部分内容在 [uninstall_run] 小节中无意义)。 第二部分可用值为 wait 和 nowait,分别表示运行外部程序后等待结束后再返回和立即返回(注:在  [uninstall_run]  小节中最好用 wait 参数,以免因程序运行未结束而卸载不掉)。 第三部分可用值为 show 和 hide,表示运行外部程序时显示或隐藏其界面。 [setup_run] 小节的内容只在安装后运行,[uninstall_run] 小节的内容只在安装前运行。

公用变量(注意:所有的路径格式,均无最后的“\”,如:c:\windows,而不是c:\windows\) 第一部分(适用于文件目录处,也适用于注册表文件 *.reg 中): #setupdir#  安装目标路径,如:c:\program file\media player classic #windir# windows所在目录,如:c:\windows、c:\winnt #sysdir# windows的system目录,如:c:\windows\system、c:\winnt\system32、c:\windows\system32 #progdir# Program File 目录,如:c:\Program File 第二部分(适用于快捷方式起始位置处,即shortcut等小节): DESKTOP            桌面 DESKTOPDIRECTORY   桌面目录 FONTS               字体目录 NETHOOD            网络邻居 PERSONAL    我的文档目录 PROGRAMS           开始菜单程序目录 SENDTO    "发送到"目录 STARTMENU    开始菜单目录 STARTUP    开始菜单启动项目录 FAVORITES           收藏夹目录 APPDATA             当前用户的特定的应用程序数据存储文件夹,例如:C:\Documents and Settings\admin\Application Data Quick_Launch     快速启动栏 COMMON_DESKTOPDIRECTORY 所有用户桌面目录 COMMON_FAVORITES   所有用户收藏夹 COMMON_PROGRAMS   所有用户开始菜单程序目录 COMMON_STARTMENU   所有用户开始菜单目录 COMMON_STARTUP   所有用户开始菜单启动项目录 第三部分(适用于编写脚本时遇到文件名或目录与分隔符等发生冲突的情况,如 [setup_run]、[file] 等小节)。 字符 替换宏 = <myinstall_equals> , <myinstall_comma>  <myinstall_vline> # <myinstall_num_sign> 回车 <myinstall_enter> 用于组件脚本中 [main] 小节下的 content(组件说明)。 #setupname#  安装包名称,如:Media Player Classic 精品版(只适用于快捷方式子目录处)。

注意: 1、所有的文本文件,如setup.ini、mpcplugin.ini、reg.reg、unreg.reg,都应使用ansi编码而不是unicode,以保证和win9x的兼容性。reg文件的格式也应是win9x格式,即第一行为“REGEDIT4”。

制作后再用 winrar 压缩,压缩时选中“创建自释放格式档案文件”(也可再选中“创建固定档案文件”以减少体积),然后在“高级”中选“SFX 选项”按钮,在常规/安装程序/释放后运行那里填入 setup.exe,“模式”中选中“解压到临时文件夹”,“覆盖方式”用“覆盖全部文件”,若要和我的版本解压时风格一致,请使用本站的 mpc.sfx 复制到 winrar 所在目录,并在“缄默模式”中选中“隐藏启动对话框”,然后在自释放模块中指定 mpc.sfx 即可。

                           Silence

如果用 7-zip 打包,可以用如下命令: copy /b 7zs.sfx + mympc.7z mympc.exe 或者: 7z a -sfx7zs.sfx mympc.exe * -r

posted @ 2014-04-07 23:41  thinksea  阅读(790)  评论(0编辑  收藏  举报