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 タグの用途は何ですか?動作原理の詳細な分析

推薦する

StarCodec (無料マルチメディアコーデック) v20241231

StarCodec は、さまざまなオーディオおよびビデオ ファイル形式の再生と変換に使用できる無料...

Shark(Sha)リークテスターオリジナルバージョン丨最新バージョンダウンロード丨バージョン番号7.1.4

Hourglass Testerの公式サイトインストール版は優れたテストツールです。Hourgla...

WinSCP (SSH グラフィカル SFTP クライアント) v6.3.7 多言語ポータブル版

WinSCP は、Windows オペレーティング システム上でファイルを安全に転送するために使用で...

ゲームに最適なモバイル プラットフォームは Android と iOS のどちらですか?

最近、私たちは携帯電話に費やす時間がますます増えています。多くの人にとって、モバイル デバイスは常に...

Sweet Home 3D(ホームデコレーション補助設計ソフト)v7.6

Sweet Home 3D は、フランスのプログラマー Emmanuel Puybaret によっ...

Systweak Advanced Disk Recovery (データ復旧ソフトウェア) v2.8.1233.18675

Systweak Advanced Disk Recovery は、削除またはフォーマットされたフ...

TikTokで年齢を変更するにはどこに行けばいいですか?

インターネット上のことは何も信じないでください。あなたが会っている相手はかわいらしい若い女の子だと思...

noMeiryoUI (Windows フォント変更ツール) v3.3.1 中国語緑版

noMeiryoUI は、Windows 8/8.1/10 システムのさまざまなインターフェイス要素...

Office インストール ツール (Office シリーズのインストールとアクティベーション) v1.4 中国語グリーン版

Office インストール ツールは Daohuaxiang によって作成され、Microsoft ...

Vov Sticky Notes (デスクトップ付箋ガジェット) v9.5 多言語ポータブル版

Vov Sticky Notes は、使いやすいデスクトップ付箋ソフトウェアです。 ユーザーは、テキ...

ASAP Utilities (強力な Excel プラグイン) v8.6 中国語クラック版

ASAP Utilities は、ASAP Utilities によって開発された Excel アド...

BiglyBT (オープンソースの無料 BitTorrent クライアント ソフトウェア) v3.8.0.0

BiglyBT は、Vuze からフォークされ、Java ベースで開発された無料の BitTorr...

WipeFile (無料ファイル削除ツール) v3.6 中国語無料版

WipeFile は、コンピューター上の機密ファイルを完全に削除し、他人による復元や使用を防ぐことが...

DB Browser for SQLite (データベース管理ツール) v3.13.1 中国語グリーン版

DB Browser for SQLite は、ユーザーが SQLite データベースを簡単に管理で...

CHK ハッシュ ツール (ファイル整合性チェック ツール) v5.70 中国語グリーン版

CHK は無料のチェックサム ユーティリティです。ファイルの整合性を検証したり、重複を検出したりでき...