chromium をブレイクポイントで止めてみる
chromium に Visual Studio を使ってブレイクポイントを設定(実行の停止)してみます。
本家サイトはこちらです。Debugging Chromium on Windows
この記事では VsChromium を使用する方法を紹介します。
VsChromium ダウンロードとインストール
VsChromium とは Visual Studio の拡張機能です。Chromiumのソースコード読み込みやプロセスへのアタッチが簡単になります。Visual Studio のバージョンは 2022 ですが、VsChromium が対応しているバージョンは 0.9.39 となります。それ以前のものはインストール時にエラーとなります。
![](https://ichino-memo.com/wp-content/uploads/2023/08/fa17c067e7c9f5eadb9401257db60b93-1024x644.png)
正しくインストールされているかを確認します。
![](https://ichino-memo.com/wp-content/uploads/2023/08/c43c25e18756df4dd71ca9123c63b645-1024x857.png)
chrome.exe 子プロセスPID表示して直後にWAITさせる
デバッグ対象を chrome.exe の子プロセス(CrRendererMain)とします。そのプロセスを起動直後に待つオプションを使用します。
C:\src\chromium\src>out\Default\chrome.exe --renderer-startup-dialog --no-sandbox
![](https://ichino-memo.com/wp-content/uploads/2023/08/chromium_debug_option-2-1024x776.png)
Visual Studio 2022 から chromium アタッチする
VsChromium がインストールされた Visual Studio 2022 を使ってchromiumのプロセスにアタッチ(接続)します。
![](https://ichino-memo.com/wp-content/uploads/2023/08/chromium_attach_process-1024x296.png)
アタッチした後で手動でプログラム停止(デバッグメニューからすべて中断を選択)します。そうするとソリューションエクスプローラーに Source Explorer としてソースツリーが表示されます。
この時点からブレイクポイントが設定可能です。
![](https://ichino-memo.com/wp-content/uploads/2023/08/47ee3721555bb0072e518bdfb462946a-1024x876.png)
CrRendererMain の直前でブレイク
こちらの記事でお伝えした CrRendererMain の手前にブレイクポイントを設定し、プロセスをRenderer starting with pid:のプロセス番号に合わせてから Visual Studio を続行(Continue)させます。次に Chromium を停止させているメッセージボックスのOKボタンを押すと、設定済みのブレイクポイントで停止します。
![](https://ichino-memo.com/wp-content/uploads/2023/08/5dc6fa01c36872f64ac0a74fe7307f92-1024x887.png)
注意事項 Visual Studio を閉じるとブレイクポイントが消えてしまう
VsChrome の拡張機能を使ってソースコードを読み込んでいます。従って、ブレイクポイントは Visual Studio を閉じて次に開いても残っていません。使用にはその点に注意する必要があります。