Inno Setup を使用して 64 ビット オペレーティング システム環境コードを検出する方法を教えてください。

Inno Setup を使用して 64 ビット オペレーティング システム環境コードを検出する方法を教えてください。

現在、ますます多くのアプリケーション ソフトウェアが徐々に 64 ビット オペレーティング システムのみをサポートし、Windows 10 および 11 システムを優先するようになっています。Windows アプリケーションを開発する場合は、ユーザーの使用プラットフォームに注意する必要があります。 Inno Setup を使用してアプリケーションをパッケージ化する場合は、現在のシステム環境を検出する必要があります。現在の Windows 構成要件を満たしている場合はインストールが実行されます。そうでない場合は、ユーザーにシステムのアップグレードを求めるメッセージが表示され、インストールが中断されます。

以下に、柔軟に使用できる例をいくつか示します。

Inno Setup を使用して Windows 10 および 11 64 ビット環境コードを検出する

Inno Setup を使用して Windows 10 および 11 x64 環境を検出するコードを記述する場合は、次のスクリプトを使用できます。

 [設定]
AppName=あなたのアプリ名
アプリバージョン=1.0
デフォルトディレクトリ名={pf}\YourAppName

[コード]
関数 IsWin10OrAbove: ブール値;
始める
 結果:= (GetWindowsVersion >= $0A00);
終わり;

関数 IsWin11OrAbove: ブール値;
始める
 結果:= (GetWindowsVersion >= $0B00);
終わり;

関数 Is64BitWindows: ブール値;
始める
 結果 := IsWin64;
終わり;

関数 InitializeSetup: ブール値;
始める
 結果:= True;

  (IsWin10OrAboveまたはIsWin11OrAbove)でないか、Is64BitWindowsでない場合は
  始める
  MsgBox('現在のシステムは Windows 10 または 11 x64 環境ではないため、インストールを続行できません。', mbError, MB_OK);
  結果:=False;
  終わり;
終わり;

コードの説明:

GetWindowsVersion >= $0A00 は、Windows バージョンが Windows 10 以上であるかどうかを判断するために使用される条件式です。

この式では、GetWindowsVersion は、現在のシステムの Windows バージョン番号を表す関数または変数です。 $0A00 は、Windows 10 のバージョン番号を表す 16 進数です。

Windows のバージョン番号は 2 つの部分で構成されており、上位の桁はメジャー バージョン番号を表し、下位の桁はマイナー バージョン番号を表します。 Windows 10 の場合、メジャー バージョン番号は 10 なので、16 進数では 0x0A になります。マイナー バージョン番号は 0 で、2 つの 0 を追加できます。

したがって、$0A00 は Windows 10 のバージョン番号を表します。

GetWindowsVersion を $0A00 と比較することで、現在のシステムの Windows バージョンが Windows 10 以上かどうかを判断します。条件が満たされている場合は、現在のシステムが Windows 10 以上であることを意味し、条件が満たされていない場合は、現在のシステムのバージョンが Windows 10 未満であることを意味します。

Windows 11 の検出は上記と同じです。

その他

上記のスクリプトを .iss ファイルとして保存し、Inno Setup Compiler を使用してコンパイルしてください。このコードは、インストーラーを初期化するときに、現在のシステムが Windows 10 または 11 の x64 ビット環境であるかどうかを確認します。そうでない場合は、エラー プロンプト ボックスがポップアップ表示され、インストールが終了します。

注意: このコードを使用する前に、Inno Setup ツールとコンパイラが正しくインストールされ、システム環境変数に追加されていることを確認してください。

<<:  Inno Setup を使用してソフトウェアのインテリジェント アップグレード更新パッチを作成する方法を教えてください。

>>:  iframe タグの用途は何ですか?動作原理の詳細な分析

推薦する

SpeedCrunch(高精度科学電卓)v0.12 中国語無料版

SpeedCrunch は、数学、物理学、工学などの分野で正確な計算を提供する効率的なオープンソース...

YouTube ミュージック デスクトップ (YouTube ミュージック プレーヤー) v2.0.7 多言語ポータブル版

YouTube Music Desktop は、デスクトップ プラットフォーム向けに設計された Yo...

FFRename (フェイフェイ リネーム ベイビー) v5.0.9.27 グリーンエディション

Feichangming Baby は非常に実用的なファイル一括名前変更ソフトウェアです。大量のファ...

myBase Desktop(個人情報管理ソフトウェア)v8.2.13 中国語無料版

myBase Desktop は、メモ、日記、パスワード、お気に入り、タスク リスト、プロジェクトな...

pgAdmin 4 (無料のオープンソース データベース管理プラットフォーム) v9.1

pgAdmin は、PostgreSQL データベースを管理および操作するための直感的なグラフィカ...

DLNow ビデオ ダウンローダー v1.54.2025.03.06 多言語ポータブル版

DLNow Video Downloader は強力なビデオ ダウンロード ソフトウェアです。ソフト...

Apple iTunes (無料マルチメディア管理ソフトウェア) v12.13.6.1

iTunes は、Apple が開発した無料のマルチメディア管理ソフトウェアで、主に音楽、ビデオ、...

テスラのモデルXとモデルY電気自動車の違いは何ですか?

電気自動車は極めて人気が高まっているが、テスラの推定50%の市場シェアに匹敵できる企業は一つもない。...

Microsoft .Net パッケージ AIO (.NET コレクション パッケージ) v25.02.25

Microsoft .NET パッケージ AIO (フルセット) は、さまざまな種類のアプリケーシ...

WinScan2PDF (PDF ドキュメント変換ツール) v9.25 中国語グリーンバージョン

WinScan2PDF は、スキャンしたファイルを PDF 形式で保存できる無料のスキャン ソフトウ...

SoftMaker Office 2024 Rev S1222.1129 中国語クラック版

SoftMaker Office は、ワードプロセッサ、スプレッドシート、プレゼンテーションという ...

Skylum Aperty (画像編集ソフトウェア) v1.2.1.978 ポータブル版

Skylum Aperture は、写真のインポートから最終出力までの完全なワークフローを提供するこ...

Solid Commander (PDF 変換ソフトウェア) v10.1.18270.10854 多言語ポータブル版

Solid Commander は、PDF ドキュメント処理に特化したプロフェッショナル ソフトウェ...

ScanMyReg (レジストリのクリーニングと最適化ツール) v4.2 多言語ポータブル版

ScanMyReg は、システム レジストリの問題を解決し、システム パフォーマンスを向上させるのに...

Aiseesoft Total Video Converter (ビデオ変換ソフトウェア) v9.2.68 多言語ポータブル版

Aiseesoft Total Video Converter は、幅広いビデオ形式変換オプションを...