UnicodePathTest是NSIS判断安装路径是否存在unicode字符的插件

/*
UnicodePathTest是NSIS判断安装路径是否存在unicode字符的插件
有些程序不能安装在有某些特殊字符的路径中,所以安装程序需要提醒用户当前的安装路径并不合符要求.
Test for unicode path
UnicodePathTest::UnicodePathTest "path"
Pop $var
$var:
 "unicode" - path contains unicode chars
 "ascii" - path doesn't contain unicode chars
*/
!AddPluginDir "../Plugins"
;Include Modern UI
!include "MUI2.nsh"
Name "UnicodePathTest"
OutFile "UnicodePathTest.exe"
InstallDir "$PROGRAMFILESUnicode path test 煤"
; define function on leaving page directory dialog
!define MUI_PAGE_CUSTOMFUNCTION_LEAVE DirectoryLeave
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_LANGUAGE "English"
Section
SectionEnd
; function which check path and show message box
Function DirectoryLeave
; test if path contains unicode characters
UnicodePathTest::UnicodePathTest $INSTDIR
Pop $R1
StrCmp $R1 "ascii" ascii_path
 messagebox mb_ok 'Path cannot contain special characters or diacritics!'
 abort
ascii_path:
messagebox mb_ok 'Path is ok!'; only for this example, remove in release
FunctionEnd
© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容