123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- ; ---------------------
- ; x64.nsh
- ; ---------------------
- ;
- ; A few simple macros to handle installations on x64 machines.
- ;
- ; RunningX64 checks if the installer is running on x64.
- ;
- ; ${If} ${RunningX64}
- ; MessageBox MB_OK "running on x64"
- ; ${EndIf}
- ;
- ; DisableX64FSRedirection disables file system redirection.
- ; EnableX64FSRedirection enables file system redirection.
- ;
- ; SetOutPath $SYSDIR
- ; ${DisableX64FSRedirection}
- ; File some.dll # extracts to C:\Windows\System32
- ; ${EnableX64FSRedirection}
- ; File some.dll # extracts to C:\Windows\SysWOW64
- ;
- !ifndef ___X64__NSH___
- !define ___X64__NSH___
- !include LogicLib.nsh
- !macro _RunningX64 _a _b _t _f
- !insertmacro _LOGICLIB_TEMP
- System::Call kernel32::GetCurrentProcess()i.s
- System::Call kernel32::IsWow64Process(is,*i.s)
- Pop $_LOGICLIB_TEMP
- !insertmacro _!= $_LOGICLIB_TEMP 0 `${_t}` `${_f}`
- !macroend
- !define RunningX64 `"" RunningX64 ""`
- !macro DisableX64FSRedirection
- System::Call kernel32::Wow64EnableWow64FsRedirection(i0)
- !macroend
- !define DisableX64FSRedirection "!insertmacro DisableX64FSRedirection"
- !macro EnableX64FSRedirection
- System::Call kernel32::Wow64EnableWow64FsRedirection(i1)
- !macroend
- !define EnableX64FSRedirection "!insertmacro EnableX64FSRedirection"
- !endif # !___X64__NSH___
|