NSIS如何设置自动路径?

NSIS路径

$INSTDIR

安装目录($INSTDIR)可以通过使用StrCpy、ReadRegStr、ReadINIStr等来更改。例如,它可用于在中进行高级检测和安装定位。onInit函数)。

请注意,在卸载程序代码中,$INSTDIR是卸载程序所在的目录,而不是安装程序中指定的目录。例如,您将卸载程序放在$WINDIR中,用户没有移动它。

,则卸载程序中的$INSTDIR等于$WINDIR。如果要将卸载程序放在另一个位置,应该先将安装程序的$INSTDIR值写入注册表或其他容量中。

易于保存,然后读取卸载程序中的值并将其赋给卸载程序中的$INSTDIR。

$OUTDIR

当前输出路径(通过SetOutPath或通过StrCpy、ReadRegStr、ReadINIStr等设置。)

$CMDLINE

安装程序的命令行输入。命令行的格式如下所示:

"完整路径\安装程序。参数parameter参数

设置。exe参数参数参数

解析“参数”部分,请参考常用函数中GetParameters的附录。如果在命令行中指定了/D=(用于跳过安装路径的选择),/D=后面的参数将不会是

保存在$CMDLINE中(之前的可以保存)。

$语言

当前正在使用的语言标识符。比如英语是1033。你可以把它换成。onInit。

常数

InstallDir属性中通常使用常量。

需要注意的是,一些新的常量并不是在所有的操作系统上都是正常的。比如$CDBURN_AREA只有在Windows XP及以上版本才正常。如果在Windows 98中使用,

您将获得一个空值。除非另有说明,否则该常量在所有操作系统上都有效。

$PROGRAMFILES

程序文件目录(通常是C:\Program Files,但在运行时会被检测到)。

$COMMONFILES

公共文件目录。这是应用程序* * *共享组件的目录(通常是C:\Program Files\Common Files,但在运行时会被检测到)。

$桌面

Windows桌面目录(通常为C:\windows\desktop,但在运行时会被检测到)。该常量的内容(所有用户或当前用户)取决于SetShellVarContext设置。默认值为when。

前用户。

$EXEDIR

安装程序运行的位置。技术上可以修改变化量,但不是好方法。

${NSISDIR}

包含NSIS安装目录的标记。将在编译时被检测到。当您想要调用NSIS目录中的资源(如图标、界面...

$WINDIR

Windows目录(通常是C:\windows或C:\winnt,但会在运行时被检测到)

$SYSDIR

Windows系统目录(通常是C:\windows\system或C:\winnt\system32,但在运行时会被检测到)

$TEMP

系统临时目录(通常为C:\windows\temp,但会在运行时被检测到)

$开始菜单

开始菜单目录(常用于添加开始菜单项,使用CreateShortCut)。该常量的内容(所有用户或当前用户)取决于SetShellVarContext设置。默认值为当前值。

用户。

$SMPROGRAMS

开始菜单程序目录(当您想要定位$STARTMENU\ program时可以使用它)。该常量的内容(所有用户或当前用户)取决于SetShellVarContext设置。默认值是当前值。

家用的。

$SMSTARTUP

开始菜单程序/启动目录。该常量的内容(所有用户或当前用户)取决于SetShellVarContext设置。默认为当前用户。

$快速启动

IE4活动桌面及以上版本的快速入门目录。如果快速启动不可用,只需返回$TEMP。

$文档

文档目录。当前用户的典型路径如下所示:C:\ documents and settings \ foo \ my documents。该常量的内容(所有用户或当前用户)取决于

SetShellVarContext设置。默认为当前用户。

当未安装Windows 95和Internet Explorer 4时,此常量无效。

$SENDTO

此目录包含发送到菜单快捷方式。

$最近

该目录包含用户最近文档的快捷方式。

$收藏夹

该目录包含用户网络收藏夹、文档等的快捷方式。该常量的内容(所有用户或当前用户)取决于SetShellVarContext设置。默认为当前用户。

当未安装Windows 95和Internet Explorer 4时,此常量无效。

$音乐

用户的音乐文件目录。该常量的内容(所有用户或当前用户)取决于SetShellVarContext设置。默认为当前用户。

此常量仅对Windows XP、ME及更高版本有效。

$图片

用户的图片目录。该常量的内容(所有用户或当前用户)取决于SetShellVarContext设置。默认为当前用户。

该常量仅对Windows 2000、XP、ME及以上版本有效。

$视频

用户的视频文件目录。该常量的内容(所有用户或当前用户)取决于SetShellVarContext设置。默认为当前用户。

此常量仅对Windows XP、ME及更高版本有效。

$网络身份

该目录包含可能存在于“网上邻居”和“网上邻居”文件夹中的链接对象。

当未安装Windows 95和Internet Explorer 4以及Active Desktop时,此常量无效。

$字体

系统字体目录。

$模板

文档模板目录。该常量的内容(所有用户或当前用户)取决于SetShellVarContext设置。默认为当前用户。

$APPDATA

应用数据目录。检测当前用户路径需要Internet Explorer 4及更高版本。检测所有用户路径需要Internet Explorer 5及更高版本。这个常数的内容(

所有用户或当前用户)取决于SetShellVarContext设置。默认为当前用户。

当未安装Windows 95和Internet Explorer 4以及Active Desktop时,此常量无效。

$LOCALAPPDATA

本机应用程序数据目录。

该常量仅在Windows 2000或更高版本的系统上有效。。

$PRINTHOOD

此目录包含可能存在于打印机文件夹中的链接对象。

该常量在Windows 95和Windows 98上无效。

$INTERNET_CACHE

Internet Explorer的临时文件目录。

当未安装Windows 95、Windows NT、Internet Explorer 4和Active Desktop时,此常量无效。

$饼干

Internet Explorer的Cookies目录。

当未安装Windows 95、Windows NT、Internet Explorer 4和Active Desktop时,此常量无效。

$历史

Internet Explorer的历史目录。

当未安装Windows 95、Windows NT、Internet Explorer 4和Active Desktop时,此常量无效。

$个人资料

用户的个人配置目录。典型的路径是C:\Documents and Settings\Foo。

该常量在Windows 2000和更高版本中有效。

$ADMINTOOLS

保存管理工具的目录。该常量的内容(所有用户或当前用户)取决于SetShellVarContext设置。默认为当前用户。

该常量在Windows 2000、ME及更高版本中有效。

$资源

这个资源目录包含了主题和其他的Windows资源(通常是C:\Windows\Resources,但是在运行时会被检测到)。

此常量在Windows XP和更高版本中有效。

$ RESOURCES _本地化

这个本地资源目录存储主题和其他Windows资源(通常是C:\ Windows \ Resources \ 1033,但在运行时会被检测到)。

此常量在Windows XP和更高版本中有效。

$CDBURN_AREA

刻录CD时存储文件的目录。

此常量在Windows XP和更高版本中有效。

$HWNDPARENT

父窗口的十进制窗口句柄。

$PLUGINSDIR

该路径是一个临时目录,它是在第一次使用插件或调用InitPluginsDir时创建的。当安装程序退出时,该文件夹将被自动删除。该文件夹的用途是

它用于保存INI文件、启动屏幕位图或插件安装选项所需的其他文件。