home *** CD-ROM | disk | FTP | other *** search
- ; ---------------------
- ; 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___
-