我可以在NSIS设置中检查它是否是ARM64系统吗?

问题描述 投票:0回答:1

我目前使用的是NSIS 3.10版本。

我正在看NSIS新闻,从3.04版本开始 我看过以下内容。

NSIS 3.04 improves Windows 10 and ARM64 detection along with 
the usual collection of improvements, bug fixes and language file updates.

但是我找不到任何可用的 API 或 NSIS 插件。

另外,我想分离出不支持sha256的操作系统,并决定是否运行或退出安装过程。

操作系统仅限于Windows。

  1. 检查Arm64系统
  2. 检查不支持SHA256 OS(系统)

我应该制作一个 dll 并调用它吗? NSIS 不支持吗?

winapi installation nsis
1个回答
0
投票
!include x64.nsh

Function .onInit
${IfNot} ${IsNativeARM64}
  MessageBox MB_OK "ARM64 only please"
  Quit
${EndIf}
FunctionEnd

如果您正在谈论使用内置加密 API 进行 SHA256 哈希处理,那么它在 Windows Vista 及更高版本上提供开箱即用的支持。 Windows XP 需要 Service Pack 3。您可以使用 Crypto 插件进行哈希计算:

!include LogicLib.nsh

Section
ClearErrors
Crypto::HashData "SHA2" "Hello world"
Pop $0
${If} ${Errors}
    DetailPrint "SHA2 not supported, cannot calculate hash!"
${Else}
    DetailPrint "Hash is $0"
${EndIf}
SectionEnd
© www.soinside.com 2019 - 2024. All rights reserved.