🗂

Windows 開発キット 2023

2022/11/05に公開約2,500字

Windows 開発キット 2023 を購入して使ってみた。

開発情報

Windows Dev Kit 2023 関連のページ

Visual Studio 2022 17.3 Preview 2

インストールしたソフト

Google Chrome

arm64 版はなさそう。
以下を参考にインストールしたが、x64版だった。

7zip

7zip は arm64 用のバイナリが公開されている

Git for windows

Git for Windows 2.38.1 ARM64 (beta) が公開されている。

>git --version --build-options
git version 2.38.1
cpu: aarch64
built from commit: bb3e90354601e0a3436a04d2f15b4a8a4d680d50
sizeof-long: 4
sizeof-size_t: 8
shell-path: /bin/sh
feature: fsmonitor--daemon

Visual studio code

以下からarm64 版をダウンロードできる。

system 版を選んでも user 版がダウンロードされる。

TortoiseSVN

以下からarm64 版をダウンロードできる。

cmake

以下からarm64版をダウンロードできる

アプリがARM64 ネイティブか確認する方法

Windows 開発キット 2023 では ARM64 バイナリも x64バイナリ(64bitアプリ) も x86バイナリ(32bit) も動作するので Windows 開発キット 2023ではネイティブアプリかわからない。

Intel PC での実行

バイナリを Intel ベースの PC にコピーして、実行すると以下のようなエラーになるので判別は可能

このバージョンの ...\arm64-test.exe は、実行中の Windows のバージョンと互換性がありません。コンピューターのシステム情報を確認してから、ソフトウェアの発行元に問い合わせてください。

ファイルをバイナリエディタで確認

バイナリをバイナリエディタで開くことによりネイティブアプリか判断可能

Windows の実行ファイルは PE Format という形式のため、PE ヘッダの直後の Machine フィールドの値を確認することにより実行ファイルがターゲットにしている CPU アーキテクチャを確認できる。

  • IMAGE_FILE_MACHINE_I386 0x014c Intel 386
  • IMAGE_FILE_MACHINE_AMD64 0x8664 AMD64 (K8)
  • IMAGE_FILE_MACHINE_ARM64 0xAA64 ARM64 Little-Endian

以下で 0x64, 0xAA(Little endian で 0xAA64) になっているので arm64 と確認できる。

Machine フィールドおよび定義値は以下を参照

PE フォーマットに関しては以下を参照

Discussion

ログインするとコメントできます