Tôi đã viết kịch bản nsis cho dự án java.I có tệp Batch trong project.I của tôi đã ghi tập tin batch cho các cửa sổ thông thường 32 bit và 64 bit.Sau khi cài đặt tôi đã bắt đầu tập tin batch tự động bằng cách sử dụng Exec lệnh.Its woks fine in 32 bit windows.but cùng một lúc này không phải là làm việc tốt trong 64 bit.so tôi nghi ngờ rằng trước khi cài đặt tôi nên kiểm tra xem các cửa sổ là 32 bit hoặc 64 bit version.please chia sẻ quan điểm của bạn làm thế nào để kiểm tra?Làm cách nào để phát hiện các cửa sổ 32 bit hoặc 64 bit khi sử dụng tập lệnh NSIS?
Trả lời
Sử dụng vĩ mô RunningX64 trong x64.nsh tiêu đề:
!include LogicLib.nsh
!include x64.nsh
Section
${If} ${RunningX64}
DetailPrint "64-bit Windows"
${Else}
DetailPrint "32-bit Windows"
${EndIf}
SectionEnd
Thanks.In url đó nói; Giải nén tập tin some.dll # vào C: \ Windows \ System32. some.dll là gì? nó có nghĩa là gì ?. tôi không thể hiểu được – Ami
Đó chỉ là một số mã ví dụ, dòng {If} là phần quan trọng ... – Anders
oh thanks.that {if} phần mà tôi đặt trong kịch bản của tôi? .oninit()? hoặc một số nơi khác? – Ami
Đối với nhân viên của Google lười biếng trong tương lai - Một đoạn nhỏ:
Bao gồm này:
!include x64.nsh
Và sử dụng này nếu:
${If} ${RunningX64}
# 64 bit code
${Else}
# 32 bit code
${EndIf}
Tính năng này có phát hiện tất cả kiến trúc 64 bit hay chỉ Windows xp x64 không? –
Tôi không thể tìm thấy một câu trả lời rõ ràng, tôi luôn luôn giả định nó! Tôi đã thử nghiệm nó trên Windows 7 64bit và Windows XP 64 bit và nó đã làm việc. Tôi chưa bao giờ gặp sự cố với bất kỳ nền tảng Windows nào – Nitay
Ứng dụng này áp dụng cho tất cả các phiên bản Windows 64 bit. (Nó gọi IsWow64Process trong nội bộ) – Anders
Đây là những gì tôi sử dụng hầu hết thời gian mà không cần 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
Bây giờ $ Bit giữ hoặc 64 hoặc 32 có thể được sử dụng như thế này:
${If} $Bit == 64
...64-bit code..
${Else}
..32-bit code...
${EndIf}
Hoặc
StrCmpS $Bit 64 SixtyFour ThirtyTwo
SixtyFour:
...
Goto End
ThirtyTwo:
...
End:
Tôi đã sử dụng StrCmpS
vì tôi tin rằng đó là tóc nhanh hơn. Lol. Hi vọng điêu nay co ich! =)
- 1. Cửa sổ 64 bit Phát hiện VMware
- 2. Cách phát hiện tệp PE đã cho (exe hoặc dll) là 64 bit hoặc 32 bit
- 3. Ứng dụng 32 bit hoặc 64 bit trên hệ điều hành 64 bit?
- 4. Khi nào sử dụng Eclipse 64 bit
- 5. 32 bit int * 32 bit int = 64 bit int?
- 6. SDK Android 32 bit hoặc 64 bit trên hệ điều hành Windows 64 bit?
- 7. Làm cách nào để chọn giữa 32-bit hoặc 64-bit trong C# Express?
- 8. Lắp ráp cửa sổ 64 bit
- 9. Java JDK 32 bit và 64 bit
- 10. 64 bit so với 32 bit để phát triển điện thoại Windows
- 11. windows 7 64 bit không đúng PATH khi tải thư viện 32 bit cho 32 bit exe
- 12. Triển khai các bit nổi 32 bit hoặc 64 bit trong JavaScript?
- 13. Làm thế nào để khởi động powerhell 64 bit từ 32-bit cmd.exe?
- 14. Xây dựng 32 bit trên Linux 64 bit bằng cách sử dụng tập lệnh cấu hình tự động?
- 15. Tại sao và khi nào sử dụng PowerShell hoặc ISE 32 hoặc 64 bit?
- 16. 64 bit bằng cách phân chia 32 bit
- 17. Cài đặt Ubuntu tốt nhất cho phát triển ứng dụng Qt 32 bit và * 64 bit?
- 18. .net InstallUtil utility - 32 bit vs 64 bit
- 19. Làm cách nào để chạy API được tạo cho 32 bit trên máy tính 64 bit?
- 20. Eclipse 32 bit chạy trên 64 bit JVM
- 21. Tôi có thể sử dụng 32 bit dll hoặc exe trong python 64 bit không?
- 22. Ứng dụng DirectX trên cửa sổ 64 bit
- 23. Sử dụng một trình cài đặt NSIS để cài đặt các tệp nhị phân 32 bit trên hệ điều hành 32 bit và 64-bit nhị phân trên hệ điều hành 64 bit có thể?
- 24. Để học lắp ráp - tôi có nên bắt đầu với 32 bit hoặc 64 bit không?
- 25. Phiên bản Boost 64 bit cho các cửa sổ 64 bit
- 26. QtCreator trên linux: 32 bit so với 64 bit
- 27. Xác định xem quy trình PowerShell hiện tại là 32 bit hay 64 bit?
- 28. Tạo 32 bit JavaFX Native Bundle trong máy 64 bit
- 29. Chuyển đổi 32 bit dll sang 64 bit dll
- 30. Làm cách nào để nhận libpam.so.0 (32 bit) trên RHEL6 64 bit của tôi?
Không được diễn giải là câu hỏi trùng lặp, nhưng cũng giống như vậy: [sử dụng-một-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