Saturday and Sunday study notes

Saturday and Sunday study notes

技術調査、技術書で得た知識、ソフトウェアやツールの設計・開発について詳述します。

Raspberry Pi 4をキーボードとして使用

Raspberry Pi 4をキーボードとして使用

Raspberry Pi 4をキーボードとして使用


Raspberry Pi 4 BをWindows PCに接続して、Raspberry Piをキーボードとして動作させる方法を紹介します。

この記事は次の人におすすめ

  • Raspberry Piをキーボードとして使用させたい人
  • Windows PCに独自の外部キーボードを接続させたい人

必要なもの

以下は動作確認のために使用したものです。

  • mini HDMI
  • 外部ディスプレイ

手順

1. Windows PCに以下サイトからRaspberry Pi Imagerを使用してSDカードに64bitのRaspberry Pi OSをインストール

www.raspberrypi.com

2. SDカード内の /boot/config.txt の末尾に以下を追記する

dtoverlay=dwc2

3. SDカード内の /boot/cmdline.txt のrootwait の後ろに書きを追記する

modules-load=dwc2,libcomposite

3. Raspberry Pi OSを入れたSDカードをRaspberry Piに挿入してRaspberry Piを立ち上げる

4. /usr/local/bin/setup_usb_gadget.sh を作成して以下のファイルを作成する

#!/bin/bash

# libcomposite をロード
modprobe libcomposite

# configfs の設定
cd /sys/kernel/config/usb_gadget/
mkdir -p g1
cd g1

# デバイスディスクリプタの設定
echo 0x1d6b > idVendor
echo 0x0104 > idProduct
echo 0x0100 > bcdDevice
echo 0x0200 > bcdUSB

# ストリングディスクリプタの設定
mkdir -p strings/0x409
echo "12345678" > strings/0x409/serialnumber
echo "KeyboardTestCCN." > strings/0x409/manufacturer
echo "Generic USB Keyboard" > strings/0x409/product

# HID 設定
mkdir -p functions/hid.usb0
echo 1 > functions/hid.usb0/protocol
echo 0 > functions/hid.usb0/subclass
echo 8 > functions/hid.usb0/report_length
echo -ne '\x05\x01\x09\x06\xa1\x01\x05\x07\x19\xe0\x29\xe7\x15\x00\x25\x01\x75\x01\x95\x08\x81\x02\x95\x01\x75\x08\x81\x03\x95\x05\x75\x01\x05\x08\x19\x01\x29\x05\x91\x02\x95\x01\x75\x03\x91\x03\x95\x06\x75\x08\x15\x00\x25\x65\x05\x07\x19\x00\x29\x65\x81\x00\xc0' > functions/hid.usb0/report_desc

# コンフィグレーションディスクリプタの設定
mkdir -p configs/c.1
echo 250 > configs/c.1/MaxPower
mkdir -p configs/c.1/strings/0x409
echo "Config 1" > configs/c.1/strings/0x409/configuration

# HID をコンフィグにリンク
ln -s functions/hid.usb0 configs/c.1

# ガジェット有効化
ls /sys/class/udc > UDC

# 権限変更
chmod 777 /dev/hidg0

5. sudo chmod +x /usr/local/bin/setup_usb_gadget.sh を実行して実行可能にする

6. /etc/systemd/system/usb_gadget.service にサービスファイルを作成する

[Unit]
Description=Setup USB Gadget
After=network.target sysinit.target

[Service]
Type=oneshot
ExecStart=/usr/local/bin/setup_usb_gadget.sh
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

7. 以下コマンドを実行してサービスを有効化する

sudo systemctl enable usb_gadget.service
sudo systemctl start usb_gadget.service

もしも上記でサービスを有効化できない場合は、古い手法ですが sudo nano /etc/rc.local を実行して /usr/local/bin/setup_usb_gadget.sh をexit 0 の前に記載し、sudo chmod +x /etc/rc.local を実行してください。

8. sudo reboot を実行して再起動します
9. 再起動後に ls /sys/kernel/config/usb_gadget/g1 を実行してg1フォルダが作成できていることを確認します

私が試したときはg1フォルダが作成されておらず、改行コードがUnix形式になっていなかったので下記コマンドを実行したところうまくいきました。

sudo dos2unix /usr/local/bin/setup_usb_gadget.sh

10. 次にキーボードに操作を送るコマンドを作成します。

/usr/local/bin/send_command_to_hid.sh というファイルを作成し、下記のような内容にします。

#!/bin/bash

# 起動後30秒待つ
sleep 30

# Tabキーを押す
echo -ne "\0\0\x2b\0\0\0\0\0" > /dev/hidg0
sleep 0.1
# キーを離す
echo -ne "\0\0\0\0\0\0\0\0" > /dev/hidg0

# 5秒待つ
sleep 5

# スペースキーを押す
echo -ne "\0\0\x2c\0\0\0\0\0" > /dev/hidg0
sleep 0.1
# キーを離す
echo -ne "\0\0\0\0\0\0\0\0" > /dev/hidg0

# 5秒待つ
sleep 5

# Enterキーを押す
echo -ne "\0\0\x28\0\0\0\0\0" > /dev/hidg0
sleep 0.1
# キーを離す
echo -ne "\0\0\0\0\0\0\0\0" > /dev/hidg0

11. sudo chmod +x /usr/local/bin/send_command_to_hid.sh を実行してスクリプトを実行可能にします

12. /etc/systemd/system/send_command_to_hid.service というファイルを作成し、下記内容にします

[Unit]
Description=Send "a" to HID device
After=multi-user.target

[Service]
Type=oneshot
ExecStart=/usr/local/bin/send_command_to_hid.sh

[Install]
WantedBy=multi-user.target

13. sudo systemctl enable send_command_to_hid.servic を実行してサービスを有効化しておきます

14. Windows PCにUSBケーブルを使用してRaspberry Piを接続してRaspberry Piを再起動します

 

手順としては以上です。

今回はRaspberry Piが起動後30秒待ち、Tab、スペース、Enterの順で押させるようにしました。

 

AutoItのインストール方法

AutoItとは

AutoItとはJonathan Bennettによって作成されたプログラミング言語です。Windows上でGUIを駆使して操作の自動化などができます。また、AutoItで作成したファイルをコンパイルして実行形式 (exe) にすることで、AutoItがインストールされていない環境でも実行することができます。

2024年8月時点でのAutoItの最新バージョンは3.3.16.1で2022年9月19日にリリースされたものです。

以下がAutoItのリリースに関する情報です。

www.autoitscript.com

Windows 11にAutoIt環境を構築

Windows 11 (バージョン: 23H2, ビルド: 22631.4037)にAutoItが動作する環境を構築していきます。

Windows 11のバージョン

Windows 11のバージョン

AutoItのダウンロード

以下のサイトからAutoItをダウンロードします。

www.autoitscript.com

「Current Versions」の項目にある「Download AutoIt」を選択するとAutoItがダウンロードされます。

AutoItサイトからのダウンロード画面

AutoItのダウンロード画面

ダウンロードしたAutoItのファイルはzipファイルとなっていました。そこで、ダウンロードしたAutoItのファイルを右クリックして「すべて展開」を選択します。

ダウンロードしたAutoItの展開画面

ダウンロードしたAutoItの展開

zipファイルの展開先を入力します。
そして、「展開」を選択するとzipファイルが展開されます。

AutoItのzipファイルの展開画面

AutoItのzipファイルの展開

AutoItのインストール

展開したフォルダの中に「autoit-v3-setup.exe」があります。

「autoit-v3-setup.exe」をダブルクリックして実行します。

AutoItのインストーラー

AutoItのインストーラ

Welcome画面が表示されます。

AutoItのインストール時には、すべてのほかのアプリケーションを終了しておくことが推奨されています。そうすることで、コンピューターを再起動することなくシステムの更新やインストールができます。

ほかのアプリケーションを終了させたら「Next」を選択します。

AutoItインストーラーのWelcome画面

AutoItインストーラーのWelcome

次にエンドユーザーライセンス契約画面が出てきます。

内容を確認し、問題なければ「I Agree」を選択します。

エンドユーザーライセンス契約画面

エンドユーザーライセンス契約

x64ツールをデフォルトにするかx86ツールをデフォルトにするかの選択画面です。Windows 11の場合は64bitのコンピューターであるはずなので、x64ツールでも問題なさそうですが、いつくかのスクリプトがx64ツールを選択すると期待通りの動作をしない可能性があるとのことです。そのため、推奨となっているx86ツールを選択して「Next」を押します。

AutoItのx64/x86の選択画面

AutoItのx64/x86の選択

AutoItの実行ファイルであるau3ファイルをダブルクリックしたときに、AutoItを実行するか、au3ファイルを編集するかを選択します。

どちらを選択しても問題ありませんが、実行の確認を簡単に行いたい人は「Run the script」を選択、編集を主に実施する人は「Edit the script」を選択しておけば間違いありません。

その後、「Next」を選択します。

au3ファイルの実行/編集の選択画面

au3ファイルの実行/編集の選択

「Script Examples」と「UDF Script Examples」を追加するかどうかを選択できます。

それほど容量は大きくないので、「Full」を選択します。もしも不要なコンポーネントがあればチェックボックスのチェックを外してください。

そして、「Next」を選択します。

コンポーネントの選択画面

コンポーネントの選択

次にAutoItをインストールする場所を選択します。

デフォルトでは「C:\Program Files (x86)\AutoIt3」となっております。

デフォルトで特に問題ありませんが、もしも別の場所にインストールしたい場合、Destination Folderの箇所を変更してください。

そして、「Install」を選択するとインストールが開始されます。

インストール先の選択画面

インストール先の選択

以下がインストール中の画面です。およそ5秒もかからずインストールが完了します。

AutoItインストール中の画面

AutoItインストール中

「Completing AutoIt v3.3.16.1 Setup」と表示されたらインストール完了です。

リリースノートを表示されるかどうかのチェックボックスがあります。チェックを付けたらリリースノートが表示されます。

「Finish」を選択します。

AutoItのインストール完了画面

AutoItのインストール完了

リリースノートを表示するにチェックを入れた状態で「Finish」を選択した場合は、下記のリリースノートの履歴が表示されます。

AutoItのリリースノート画面

AutoItのリリースノート

そして、スタートメニューにAutoItが追加されていることを確認できました。

AutoItがインストールされていることの確認画面

AutoItがインストールされていることの確認

 

【体験記】hyper-VでWindows PEとWindowsでファイルをやり取り方法を探る

この記事は次のような人におすすめ

・ファイルをhyper-Vの仮想環境のWindows PEと共有したい人
Hyper-vの仮想環境のWindows PEで作成したファイルをWindowsに共有したい人

 

やりたいことのイメージは下記の画像です。

 

ファイルAをWindowsとWindows上のHyper-vの仮想環境に構築したWindows PEで共有するときのイメージ
WindowsHyper-vを介したWidows PEとのファイルA共有のイメージ図

 

本記事では"Windows"はHyper-vを動かしているOSのことを指します。また、"Windows PE"はWindowsHyper-vで仮想環境上で動いているものを指します。

 

Microsoftの以下の記事を読んで、セッションの拡張を使用してファイルAを共有しようと思いました。

 

 

しかし、拡張セッションはグレーアウトしてました。これではファイルを共有できません。

 

仮想マシンのWindows PEで拡張セッションがグレーアウトしている状態
仮想マシンWindows PEで拡張セッションの状態

 

このように拡張セッションがグレーアウトしているようなWindows PEの仮想環境に対して、Windowsからファイルを共有する方法を模索していきます。

 

WindowsHyper-V上のWindows PEでファイルの共有

 

Windows上での事前準備とHyper-v上のWindows PEで実施する手順の2つに分かれます。まずは、Windows上で実施する事前準備から行ってください。

 

Windows上での事前準備

 

Windows上で行う事前準備について紹介します。

 

まずは共有したいフォルダを右クリックします。
"プロパティ"を選択してください。

 

今回はDドライブにあるShare\testというフォルダで試してみます。

 

フォルダを右クリックして"プロパティ"を表示させた画面
フォルダを右クリックしたとき

 

共有タブの"共有"ボタンを選択します。

 

testフォルダのプロパティの共有タブの共有ボタンの画像
共有タブの共有ボタン

 

共有する相手として"Everyone"を追加します。アクセス許可のレベルはWindows PEにアクセスさせたい許可のレベルを設定します。

 

今回は"読み取り"とします。

 

Everyoneを読み取り専用として共有する相手に追加
Everyoneを共有に追加

 

次にスタートメニューにcmdと入力してコマンドプロンプトを起動します。

 

スタートメニューからcmdを入力してコマンドプロンプトの起動
コマンドプロンプトの起動

 

以下のipconfigコマンドを実施してネットワークの設定を確認します。

 

ipconfig

 

"イーサネット アダプター vEthernet (Default Switch):" もしくは "Wireless LAN adapter Wi-Fi"の"IPv4 アドレス"に記載されている"192.168.0.10"のように記載されている値 (環境によって値は変わります) を確認します。

 

ipconfigで確認したIPv4アドレスの値は後ほど使用します。

 

vEthernetもしくはWLANのIPv4アドレスの確認方法
ipconfigでIPv4アドレスの確認

 

Hyper-V上のWindows PEでの作業

 

次にスタートメニューからhyper-V マネージャーを起動してください。

 

スタートメニューからHyper-Vマネージャーの起動
Hyper-Vマネージャーの起動

 

Hyper-V上で実行するためのWindows PE作成方法は以下を参照してください。

 

 

Hyper-V上でのWindows PEの選択画面
仮想環境のWindows PE

 

Hyper-Vの仮想環境のWindows PEを起動してきました。

 

Hyper-Vから起動してきたWindows PE
起動した仮想環境のWindows PE

 

Windows上の共有フォルダへアクセスする方法を探ります。
共有フォルダにドライブレターを割り当ててみます。

 

以下のコマンドを使用してAドライブに割り当てます。
先ほどWindows上でipconfigで取得した"IPv4 アドレス"に記載されていた値を使用します。
今回はIPv4 アドレスを192.168.0.10、共有されているフォルダをD:\Share\testを例とします。

 

net use a: \\192.168.0.10\Share\test

 

ユーザー名とパスワードを要求されたらWindowsのログインで使用しているユーザー名とパスワードを入力してください。

 

Windows上のフォルダに共有ドライブを割り当て
Windowsへ共有ドライブの割り当て

 

Aドライブに移動してフォルダの中身を確認してみましょう。

 

A:
dir /a

 

共有したフォルダの中身を確認
フォルダの中身を確認

 

Windows上で保存しておいたファイルが確認できました。

 

FAQ

 

Q
net useに失敗するとき
A

pingコマンドでIPv4 アドレスが合っている確認してみてください。

以下のようにpingコマンドを打ってみてどのような応答があるか確認してください。
例ではIPv4アドレスが192.168.0.10の場合で試しています。

ping 192.168.0.10

以下がIPv4アドレスが間違っているときです。
ipconfigコマンドからやり直してみてください。

Pingで応答が返ってこずIPv4アドレスが間違っているとき
IPv4アドレスが間違っているとき

以下がIPv4アドレスが合っているときです。
IPv4アドレスは間違っていないので、共有の設定などを確認してみてください。

Pingで応答が返ってきてIPv4アドレスが合っているとき
IPv4アドレスが合っているとき

 

 

 

 

 

 

 

 

【体験レポート】Windows PEでタッチパッドやLANを使用する方法

この記事はこのような人におすすめ!

Windows PEでタッチパッドを使用できるようにしたい人
Windows PEにドライバーを追加したい人

ノートパソコンでWindows PEを起動したときにタッチパッドを使用する方法を紹介します。
タッチパッド以外にもLANやキーボードがWindows PE上で使用できないとき同じ方法で対応できます。

タッチパッドやLANが使用できない理由はドライバーがインストールされていないからかもしれません。
ドライバーをインストールすることでそれらを使用することができます。

最近のドライバーはINFファイルから構成されています。INFファイルについて詳細を知りたい方は以下のMicrosoftのサイトを確認してください。

タッチパッドドライバーのダウンロード

以下に代表的なドライバーの入手先を示します。
一番簡単なドライバーの入手方法は"[PCの機種名] タッチパッドドライバー"で検索してみてください。

DellのPCの場合

HPのPCの場合

LenovoのPCの場合

富士通 (Fujitsu) の場合

LANドライバーのダウンロード

以下に代表的なドライバーの入手先を示します。
一番簡単なドライバーの入手方法は"[PCの機種名] LANドライバー"で検索してみてください。

DellのPCの場合

HPのPCの場合

LenovoのPCの場合

富士通 (Fujitsu) の場合

以下はメーカーからドライバーの提供がなく、どのメーカーのLANが使用されているかわかる場合に自己責任で使用してください。

IntelのLANドライバーを使用している場合

RealtekのLANドライバーを使用している場合

【方法1】Windows PEが起動している状態にドライバーを追加

Windows PEへドライバーをオンラインインストール
  • STEP1
    使用しているパソコンのサポートサイトでドライバーを入手

    ドライバーを追加したいPCと追加したいドライバー(タッチパッドやLANなど)を検索してドライバーを入手します。
    ドライバーはexeファイルやzipファイルに圧縮されていることがあるので7zipなどを使用して展開してinfファイルが存在する形式にしましょう。

  • STEP2
    USBメモリなどにドライバーをコピー
  • STEP3
    Windows PEを起動
    Windows PEの起動画面
    Windows PEの起動画面
  • STEP4
    STEP2のUSBメモリなどをWindows PEが起動したPCに接続
  • STEP5
    ドライバーのインストール

    以下コマンドを使用します。

    drvload [infファイル名]

    インストールに成功すると"Drvload: Successfully loaded [infファイル名]"と表示されます。

【方法2】Windows PEが起動する前にドライバーを追加

Windows PEへドライバーをオフラインインストール
  • STEP1
    使用しているパソコンのサポートサイトでドライバーを入手

    ドライバーを追加したいPCと追加したいドライバー(タッチパッドやLANなど)を検索してドライバーを入手します。
    ドライバーはexeファイルやzipファイルに圧縮されていることがあるので7zipなどを使用して展開してinfファイルが存在する形式にしましょう。

  • STEP2
    boot.wimをマウント

    Windows PEに含まれているboot.wimをマウントします。
    デフォルトではmedia\sourcesフォルダの下にあります。
    マウントは以下のコマンドを使用します。

    DISM /Mount-Image /ImageFile:media\sources\boot.wim /Index:1 /MountDir:mount

    Windows PEのboot.wimのマウント
    Windows PEのboot.wimのマウント
  • STEP3
    ドライバーの追加

    以下コマンドでマウントしたファイルにinfファイルを追加します。

    Dism /Image:mount /Add-Driver /Driver:[infファイル]

    Windows PEにドライバーを追加
    Windows PEにドライバーを追加
  • STEP4
    変更をコミットしてアンマウント

    以下コマンドで変更内容をコミットしてアンマウントします。
    以上でドライバーを追加したWindows PEの完成です。

    Dism /Unmount-Image /MountDir:mount /Commit

    Windows PEのboot.wimのコミット
    Windows PEのboot.wimのコミット

まとめ

ドライバーをインストールする方法を2つ紹介しました。

1つ目は、Windows PE上でdrvloadを使用することでinfファイルのドライバーをインストールする方法です。

2つ目は、オフラインでWindows PEのwimファイルにドライバーを追加する方法です。

Windows PE上でドライバーが必要になったときは使用してみてください。

【Windows PE】Wimファイルのインデックスを取得/操作する方法を調べてみる

この記事は次のような人におすすめ!

・Wimファイルのインデックスを取得したい人
・Install.wimにどのエディションが入っているか確認

Windows PEにはboot.wimが含まれています。boot.wimなどのwimファイルはインデックスにそれぞれのイメージが存在しています。今回はWindows 11 のisoファイルを例に確認していきます。

MicrosoftのサイトからWindows 11のisoファイルをダウンロードしてみました.
isoファイルに含まれているinstall.wimを使用してインストールを試みる際には,どのエディションをインストールするかを指定する必要があります.
指定方法としては,Wimファイルに含まれているインデックス番号を指定しなければいけません.
そこで,wimファイルのインデックス情報を取得する方法を紹介します.

Wimファイルとは

WIMファイル(Windows Imaging Formatファイル)は、Windowsのデプロイメント(展開)、バックアップ、回復、およびシステム管理のために使用されます。以下にWIMファイルに関する詳細を説明します。

  • ディスクイメージフォーマット
    WIMファイルは、ディスク全体のイメージを格納するためのバイナリファイルフォーマットです。Windowsオペレーティングシステム、アプリケーション、設定、およびデータが含まれます。WIMファイルは、イメージをコンパクトに保持し、圧縮することができます。
  • Windows展開ツール
    WIMファイルは、Windows展開ツール(Windows Deployment Services、Windows Image Deployment、Windows System Image Managerなど)を使用して、大規模なコンピュータネットワークにWindowsイメージを展開するために使用されます。これにより、大量のコンピュータで一貫性のあるWindows環境を構築できます。
  • Windowsのバックアップとリカバリ
    WIMファイルは、Windowsのバックアップとリカバリにも使用されます。Windows Backup and Restoreツールは、システムイメージをWIMファイルとしてバックアップし、必要な場合に復元できます。
  • イメージのバージョン管理
    WIMファイルには、異なるWindowsバージョン、エディション、および言語の複数のイメージを含めることができます。これにより、異なる展開要件に合わせてカスタマイズできます。
  • 圧縮と効率性
    WIMファイルはデータ圧縮アルゴリズムを使用してデータを効果的に圧縮するため、ディスク領域を節約できます。これは、ストレージ容量の節約やネットワーク帯域幅の削減に役立ちます。
  • カスタムイメージの作成
    IT管理者やシステム管理者は、WIMファイルを使用してカスタムWindowsイメージを作成し、特定のアプリケーションや設定を含めることができます。これにより、特定の業務要件に合致したWindowsイメージを展開できます。

WIMファイルはWindowsのデプロイメント、バックアップ、リカバリ、およびシステム管理のための非常に便利なファイルフォーマットです。ITプロフェッショナルや組織は、WIMファイルを活用してWindows環境を効率的に管理し、展開することができます。

Wimファイルのインデックスを取得

Wimファイルの情報を取得するためにはDismコマンドを使用します.
DismコマンドのオプションであるGet-WimInfoを指定することで確認できます.
install.wimはisoファイルの中のsourcesフォルダの中に含まれています.
以下のコマンドを使用するとWimファイルのインデックス情報を取得できます.

Dism /Get-WimInfo /WimFile:[Wimファイル名]

今回はWindows 11のisoファイルのinstall.wimの情報を取得してみました.

Dismコマンドによるinstall.wimのインデックス
install.wimのインデックス

install.wimのインデックス情報を取得するとインデックス 1にHome,インデックス 2にEducation,インデックス 3にProなどのエディションが含まれていることが分かりました.

Wimファイルにインデックスを追加する方法

すでに存在するWimファイルに対して新しくwimを追加することでインデックスを追加することができます。追加方法は以下になります。

Dism /image:[既存のイメージ名またはインデックス番号] /add-image /imagefile:[新しいイメージのファイルパス] /name:[新しいイメージの名前]

  • [既存のイメージ名またはインデックス番号]
    イメージを追加する対象の既存のイメージの名前またはインデックス番号を指定します。
  • [新しいイメージのファイルパス]
    追加する新しいイメージのファイルパスを指定します。
  • [新しいイメージの名前]
    新しいイメージに与える名前を指定します。

Wimファイルを一つにまとめることでインデックス番号を指定するだけで、必要なファイルを取得することができます。

Wimファイルのインデックスを削除する方法

wimファイルのサイズが肥大化してしまったときに不要なインデックスを削除することで、wimファイルサイズを小さくすることができます。

削除するためのコマンドは以下です。

Dism /image:[削除したいイメージ名またはインデックス番号] /Delete-Image /CheckIntegrity

  • [削除したいイメージ名またはインデックス番号]
    削除したいイメージのイメージ名またはインデックス番号を指定します。
  • CheckIntegrity
    Wimファイルが破損していないかどうかをチェックします。このオプションは必須ではないですが、使用しておいたほうがいいです。

上記コマンドでインデックスからは削除されましたが、エントリーに関する情報だけが削除されるだけです。そのためWimファイルのサイズは小さくなっていません。

ファイルサイズを小さくするためには、インデックスを削除後にwimファイルをエクスポートする必要があります。

Dism /Export-Image /SourceImageFile:[既存のイメージ名またはインデックス番号] /DestinationImageFile:[出力したいイメージ名] /CheckIntegrity

  • [既存のイメージ名またはインデックス番号]
    先ほどDelete-Imageを実施したイメージの名前またはインデックス番号を指定します。
  • [出力したいイメージ名]
    出力したいイメージ名を記載します。

これでWimファイルの不要なインデックスを削除し、サイズを最適化することができました。

まとめ

Dismコマンドを使用してWimファイルのインデックス情報を取得/操作する方法を紹介しました.Wimファイルには複数の情報がインデックスに分かれているので,どのインデックス番号に必要なファイルが含まれているか確認してから使用しましょう.

また、インデックスの追加や削除についても操作方法も紹介しました。Wimファイルのインデックスを操作して最適化して使用しましょう。

【Windows 11】F1~F12キーのいずれかを無効にする方法

この記事は次のような人におすすめ!

・F1からF12までのどれかを無効にしたい人

・Functionキーを無効にしたい人

 

ファンクションキーはショートカットに使用できて便利です.
しかし,F2を押そうと思ったのに間違えてF1を押してしまうとヘルプが表示されてしまいます.
いつも使用することのないファンクションキーを無効にしておくこと方法を紹介します.

 

レジストリを設定するので,事前にレジストリのバックアップおよび変更は自己責任でお願いします.

事前準備

 

事前の準備として以下のレジストリを開きます.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout

 

レジストリエディターの起動
レジストリエディターの起動

 

右クリックを押して"新規" > "バイナリ値"の順に選択します.

 

レジストリエディターのバイナリ値の追加
レジストリエディターのバイナリ値の追加

 

追加したバイナリ値の名前を"Scancode Map"とします.

 

レジストリエディターにScancode Mapの追加
レジストリエディターにScancode Mapの追加

 

F1キーを無効にする方法

 

以下のように値を設定します.

 

00 00 00 00 00 00 00 00 00
02 00 00 00 00 00 00 3B 00
00 00 00 00 00

 

バイナリ値の編集 (F1)
バイナリ値の編集 (F1)

 

設定した後,再起動をします.するとF1が使用できなくなっています.

 

F2キーを無効にする方法

 

以下のように値を設定します.

 

00 00 00 00 00 00 00 00 00
02 00 00 00 00 00 00 3C 00
00 00 00 00 00

 

バイナリ値の編集 (F2)
バイナリ値の編集 (F2)

 

設定した後,再起動をします.するとF2が使用できなくなっています.

 

F3キーを無効にする方法

 

以下のように値を設定します.

 

00 00 00 00 00 00 00 00 00
02 00 00 00 00 00 00 3D 00
00 00 00 00 00

 

バイナリ値の編集 (F3)
バイナリ値の編集 (F3)

 

設定した後,再起動をします.するとF3が使用できなくなっています.

 

F4キーを無効にする方法

 

以下のように値を設定します.

 

00 00 00 00 00 00 00 00 00
02 00 00 00 00 00 00 3E 00
00 00 00 00 00

 

バイナリ値の編集 (F4)
バイナリ値の編集 (F4)

 

設定した後,再起動をします.するとF4が使用できなくなっています.

 

F5キーを無効にする方法

 

以下のように値を設定します.

 

00 00 00 00 00 00 00 00 00
02 00 00 00 00 00 00 3F 00
00 00 00 00 00

 

バイナリ値の編集 (F5)
バイナリ値の編集 (F5)

 

設定した後,再起動をします.するとF5が使用できなくなっています.

 

F6キーを無効にする方法

 

以下のように値を設定します.

 

00 00 00 00 00 00 00 00 00
02 00 00 00 00 00 00 40 00
00 00 00 00 00

 

バイナリ値の編集 (F6)
バイナリ値の編集 (F6)

 

設定した後,再起動をします.するとF6が使用できなくなっています.

 

F7キーを無効にする方法

 

以下のように値を設定します.

 

00 00 00 00 00 00 00 00 00
02 00 00 00 00 00 00 41 00
00 00 00 00 00

 

バイナリ値の編集 (F7)
バイナリ値の編集 (F7)

 

設定した後,再起動をします.するとF7が使用できなくなっています.

 

F8キーを無効にする方法

 

以下のように値を設定します.

 

00 00 00 00 00 00 00 00 00
02 00 00 00 00 00 00 42 00
00 00 00 00 00

 

バイナリ値の編集 (F8)
バイナリ値の編集 (F8)

 

設定した後,再起動をします.するとF8が使用できなくなっています.

 

F9キーを無効にする方法

 

以下のように値を設定します.

 

00 00 00 00 00 00 00 00 00
02 00 00 00 00 00 00 43 00
00 00 00 00 00

 

バイナリ値の編集 (F9)
バイナリ値の編集 (F9)

 

設定した後,再起動をします.するとF9が使用できなくなっています.

 

F10キーを無効にする方法

 

以下のように値を設定します.

 

00 00 00 00 00 00 00 00 00
02 00 00 00 00 00 00 44 00
00 00 00 00 00

 

バイナリ値の編集 (F10)
バイナリ値の編集 (F10)

 

設定した後,再起動をします.するとF10が使用できなくなっています.

 

F11キーを無効にする方法

 

以下のように値を設定します.

 

00 00 00 00 00 00 00 00 00
02 00 00 00 00 00 00 57 00
00 00 00 00 00

 

バイナリ値の編集 (F11)
バイナリ値の編集 (F11)

 

設定した後,再起動をします.するとF11が使用できなくなっています.

 

F12キーを無効にする方法

 

以下のように値を設定します.

 

00 00 00 00 00 00 00 00 00
02 00 00 00 00 00 00 58 00
00 00 00 00 00

 

バイナリ値の編集 (F12)
バイナリ値の編集 (F12)

 

設定した後,再起動をします.するとF12が使用できなくなっています.

 

【Windows PE】Hyper-VでWindows PEを起動できるかを調査

この記事はこんな人におすすめ!

Hyper-VWindows PEを動かしたい人
・仮想環境でWindows PEを動かしたい人

 

Windows標準の仮想環境であるHyper-Vを使用してWindows PEを起動する方法を調べてます。
Hyper-Vとは、Windowsの標準で備わっている仮想マシンです。Hyper-Vの詳細についてはMicrosoftWebサイトを参考にしてみてください。

 

準備するもの

 

 

Hyper-VWindows PEの起動

 

まずはスタートメニューからHyper-Vを起動します.
起動したHyper-Vの"操作"を選択します.

 

Hyper-Vマネージャーの"選択"
Hyper-Vマネージャーの"選択"

 

"新規" > "仮想マシン" の順にクリックしてください.

 

Hyper-Vマネージャーの"新規" > "仮想マシン"
Hyper-Vマネージャーの"新規" > "仮想マシン"

 

仮想マシンを作成するためのウィザードが出てきます.
"開始する前に"のウィザードで"次へ"を選択します.

 

仮想マシンの新規作成ウィザードの開始する前に
仮想マシンの新規作成ウィザードの開始する前に

 

次に"名前と場所の指定"で任意の名前を付けます.
この名前が仮想マシンの名前として表示されます.
今回は"WindowsPE_Win11_22H2"という名前にしました.そして,"次へ"を選択します.

 

仮想マシンの新規ウィザードの名前の場所の指定
仮想マシンの新規ウィザードの名前の場所の指定

 

"世代の指定"では"第2世代"を選択して"次へ"をクリックします.

 

仮想マシンの新規ウィザードの世代の指定
仮想マシンの新規ウィザードの世代の指定

 

"メモリの割り当て"では任意の起動メモリを選択します.
今回は1024MBとして,"次へ"を選択します.

 

仮想マシンの新規ウィザードの世代の指定
仮想マシンの新規ウィザードの世代の指定

 

"ネットワークの構成"ではインターネットの接続先を選択します.
今回はインターネットに接続しないので”接続しない”とします.

 

仮想マシンの新規ウィザードのネットワークの構成
仮想マシンの新規ウィザードのネットワークの構成

 

"仮想ハードディスクの接続"では"仮想ハードディスクを作成する"のラジオボタンを選択して,"次へ"をクリックします.

 

仮想マシンの新規ウィザードの仮想ハードディスクの接続
仮想マシンの新規ウィザードの仮想ハードディスクの接続

 

"インストールオプション"では"ブートイメージファイルからオペレーティングシステムをインストールする"のラジオボタンを選択して,参照ボタンからWindows PEが起動するISOファイルを指定します.
そして,"次へ"を選択します.

 

仮想マシンの新規ウィザードのインストールオプション
仮想マシンの新規ウィザードのインストールオプション

 

最後に"仮想マシンの新規作成ウィザードの完了"で,作成する仮想マシンの内容が表示されます.
その内容で問題がなければ"完了"を選択します.

 

仮想マシンの新規ウィザードの仮想マシンの新規作成ウィザードの完了
仮想マシンの新規ウィザードの仮想マシンの新規作成ウィザードの完了

 

するとHyper-Vマネージャーに任意の名前を付けたWindows PEが追加されています.
以下の追加したWindows PEの仮想マシンをダブルクリックします(以下の赤枠内をダブルクリック).

 

Hyper-Vマネージャーに追加されたWindows PE仮想マシン
Hyper-Vマネージャーに追加されたWindows PE仮想マシン

 

Windows PEの仮想マシンが起動してくるので"起動"を押します.

 

Windows PE仮想マシン起動画面
Windows PE仮想マシン起動画面

 

Windows PEがHyper-V上で起動できました.

 

Hyper-Vで起動したWindows PE
Hyper-Vで起動したWindows PE

 

まとめ

 

Windowsのデフォルトで入っている仮想マシンHyper-Vを使用してWindows PEを起動することができました。Hyper-V上でWindows PEを起動できることで、複数台のパソコンを準備しなくても簡単にWindows PE上の動作を確認することができます。また、簡単に同じ環境を再構築することができるので、さまざまな動作の検証をアクティブに行うことができます。