我已經爲java項目編寫了nsis腳本。我在我的項目中有批處理文件。我已經爲Windows 32位和64位編寫了批處理文件。安裝後,我已經開始使用Exec命令自動啓動批處理文件。 32位windows.but同時這是不行的64位bit.so我的懷疑,所以我懷疑安裝之前,我應該檢查是否Windows是32位或64位版本。請分享您的意見如何檢查?如何使用NSIS腳本檢測Windows 32位或64位?
26
A
回答
25
使用RunningX64宏在x64.nsh頭:
!include LogicLib.nsh
!include x64.nsh
Section
${If} ${RunningX64}
DetailPrint "64-bit Windows"
${Else}
DetailPrint "32-bit Windows"
${EndIf}
SectionEnd
58
對於未來的懶惰的Google - 一個小片段:
包含此:
!include x64.nsh
,並使用此,如果:
${If} ${RunningX64}
# 64 bit code
${Else}
# 32 bit code
${EndIf}
-1
這是我用大部分的時間,而不需要x64.nsh
Var Bit
System::Call "kernel32::GetCurrentProcess()i.s"
System::Call "kernel32::IsWow64Process(is,*i.r0)"
StrCmpS $0 0 +3
StrCpy $Bit 64
Goto +2
StrCpy $Bit 32
現在$位持有其中任何一個可以這樣使用64或32:
${If} $Bit == 64
...64-bit code..
${Else}
..32-bit code...
${EndIf}
或者
StrCmpS $Bit 64 SixtyFour ThirtyTwo
SixtyFour:
...
Goto End
ThirtyTwo:
...
End:
我用StrCmpS
,因爲我相信這是一個更快的頭髮。大聲笑。希望這可以幫助! =)
相關問題
- 1. MySQL 32位或64位 - Apache 32位Windows 64位?
- 2. 如何檢測VC++代碼中的JRE位(32位或64位)
- 3. 從Google Web Toolkit檢測64位或32位Windows
- 4. 如何檢測C + +是Windows 32或64位?
- 5. 是否可以在bash腳本中檢測32位與64位?
- 6. 如何檢測Flex中的32位或64位操作系統?
- 7. 如何以編程方式檢測64位或32位機器?
- 8. SharePoint 64位或32位
- 9. Windows上的Perl:32位或64位?
- 10. Ubuntu 64或32位?
- 11. InnoSetup:檢測如果Java是32位或64位
- 12. 在後構建腳本如何檢查系統是64位或32位
- 13. 32位或64位?使用C代碼
- 14. Windows 64位操作系統上的32位或64位Android SDK?
- 15. 在Windows 7 64位上使用Java 32位的Eclipse 32位
- 16. 我有Numpy 32位或64位嗎?
- 17. 如何檢測Cocoa應用程序是32位還是64位?
- 18. 64位或32位版本的WinDBG?
- 19. 如何使用virtualenv在Windows中使用32位和64位Python?
- 20. 檢測NSIS中的64位JVM
- 21. 使用NSIS在64位服務器上運行32位java keytool
- 22. 如果操作系統是Windows 2003(32位或64位)或Windows 2008(64位),請檢查WiX
- 23. 32或64位機器
- 24. 如何檢測,如果CPU是32位還是64位
- 25. 如何在Windows 64位中使用python調用32位exes?
- 26. 32位/ 64位Windows/Linux應用程序
- 27. 如何在Windows 64位上使用SQL Server Compact Edition 32位?
- 28. 如何在Visual Basic 2010中獲得Windows 32或64位版本?
- 29. 在64位Windows 7上使用32位版本的ODBC?
- 30. 如何檢查IIS是否處於32位或64位模式
沒有措辭作爲一個重複的問題,但它是相同的:[use-one-nsis-installer-to-install-32-bit-binaries-on-32-bit-os-and-64-bit- binari](http://stackoverflow.com/questions/11126629/use-one-nsis-installer-to-install-32-bit-binaries-on-32-bit-os-and-64-bit-binari) – nawfal