先日、クリアコードはWindows向けポップアップウィンドウ抑止ツール「PopGuard」の提供を開始しました。
Microsoft Windowsの標準機能には、通知を抑える「応答不可」や「フォーカス セッション」があります。 これらは主に画面の隅に表示される通知バナーを抑止することができますが、アプリケーションが独自に表示するリマインダーや確認ダイアログなどのウィンドウは抑止できません。 そのため、作業中や画面共有中にも前面に表示されてしまいます。
こうしたWindowsの通知設定では抑止できないウィンドウを抑止するため、PopGuardを開発しました。
本記事では、PopGuardを実際に使用する手順・設定方法について紹介します。
抑止対象ダイアログ
ここでは、抑止対象のダイアログとして、Microsoft Outlook(従来のOutlook)のアラーム通知ダイアログを例として採用します。

Outlookのオプションで、[詳細設定]→[リマインダー]→[他のウィンドウの上にリマインダーを表示する]を指定していると、アラームの表示時にほかのウィンドウより手前に表示されます。 (ただし、後述のログで確認するとおり、Windowsの最前面固定(TopMost)のウィンドウではありません。) 通知を見逃さないため、普段は上記の設定で手前に表示されるように設定しているものとします。
Web会議で通話中は、このダイアログが表示されないように抑止することを考えます。
抑止対象ダイアログの詳細の確認
PopGuardは、抑止中でなくても、トップレベルウィンドウ(親のないウィンドウ)の表示を検知すると、そのウィンドウの情報をログに出力します。 このログ出力機能を利用して、抑止対象のダイアログの詳細を確認します。
なお、ログに出力されるのは、PopGuardの起動後に表示されたウィンドウです。
ログは%LOCALAPPDATA%\PopGuard\PopGuard.logに出力されます。
まず、Windowsのタスク バーの通知領域(タスクトレイ)に、PopGuardが表示されていることを確認します。

この状態で抑止対象のダイアログを表示させ、ログファイルを開きます。 ログにはほかのウィンドウの情報も出力されるため、ダイアログを表示させた時刻の行を探します。
今回の例では、以下のようなログが出力されます。
2026-10-26 15:57:58 : window toplevel: process=OUTLOOK title=1 個のアラーム topMost=False modal=True (modal frame (WS_EX_DLGMODALFRAME))
このログのうち、設定ファイルの作成に使う項目は以下のとおりです。
process: ウィンドウを表示したプロセスの名前title: ウィンドウのタイトルtopMost: 最前面に固定表示(TopMost)されているかどうかmodal: PopGuardがモーダルウィンドウ(ダイアログ)と判定したかどうか- 判定した場合は、判定の理由が括弧内に出力されます
今回のダイアログはtopMost=Falseのため、手前に表示されてはいるものの、TopMostのウィンドウではないことがわかります。
modal=Trueと判定されていますが、このダイアログの表示中に別の操作を行うことが可能であり、本来の意味でのモーダルダイアログではありません。
そのため、このダイアログを抑止しても問題ありません。
これらの情報を元に、設定ファイルを作成します。
設定ファイルの作成
PopGuardはパラメータシート(Excelファイル)を用意しています。 パラメータシートに必要な情報を記載の上、エクスポートすることで、必要な設定ファイルを作成できます。
抑止ルール(Rules)
「抑止対象ダイアログの詳細の確認」セクションで確認した情報を元に、「抑止ルール(Rules)」シートに必要な情報を入力します。
- 有効: 有効
- プロセス:
OUTLOOK- ログの
process=OUTLOOKから抜粋しました - プロセス名の大文字・小文字は区別されません
- ログの
- タイトル:
*個のアラーム- ログの
title=1 個のアラームから作成しました *はワイルドカードで、この設定はタイトルが「個のアラーム」で終わるダイアログ、という意味です。- 数字の後ろの半角スペースも含めて
*に合致するため、「1 個のアラーム」「2 個のアラーム」のどちらも対象になります。
- ログの
- 隠し方: 背面に送る
- 任意です。「背面に送る」のほかに、「最小化」「非表示」から選択できます。
- TopMostのみ: 無効
- ログの
topMost=Falseから、このダイアログはTopMostではないため、無効を指定します。 - 有効(既定)のままでは、TopMostではないこのダイアログは抑止の対象になりません。
- ログの
- 抑止しない: 無効
- 今回はルールに合致したものを抑止したいため、「抑止しない」を無効とします。
- モーダルも抑止: 有効
- ログの
modal=Trueから、PopGuardはこのダイアログをモーダルと判定するため、モーダルも抑止対象とします。
- ログの

一般設定
Web会議中にダイアログが抑止されるように、「一般設定」シートで以下の設定を行います。
- マイク使用中は自動で抑止する: 有効

これにより、マイクが使用中の間(通話中やWeb会議中など)は抑止対象のダイアログが自動的に抑止されます。
エクスポート
「エクスポート」シートから、設定ファイルをエクスポートします。 エクスポートすると、PopGuard.rules.jsonが作成されます。

今回の設定内容では、以下の設定ファイルが作成されます。
{
"rules": [
{
"enabled": true,
"process": "OUTLOOK",
"title": "*個のアラーム",
"class": "",
"hide": "Bottom",
"exclude": false,
"topMostOnly": false,
"suppressModal": true
}
],
"durations": [
{ "label": { "ja": "30分", "en": "30 min" }, "minutes": 30 },
{ "label": { "ja": "1時間", "en": "1 hour" }, "minutes": 60 },
{ "label": { "ja": "2時間", "en": "2 hours" }, "minutes": 120 },
{ "label": { "ja": "一日", "en": "1 day" }, "minutes": 1440 },
{ "label": { "ja": "無制限", "en": "Unlimited" }, "minutes": 0 }
],
"autoSuppressDuringFocus": true,
"autoSuppressDuringMicrophone": true,
"excludeSystemWindows": true,
"language": "auto"
}
このファイルを、PopGuardのインストール先フォルダ(PopGuard.exeが存在するフォルダ)に配置します。 その後、PopGuardを再起動することで、設定内容が反映されます。
動作確認
上記の設定を反映の上、以下の手順で動作確認を実施します。
- タスクトレイのPopGuardのメニューを確認し、「マイク使用中に自動抑止: 有効」となっていることを確認します。
- 次に、実際にWeb会議ツールを起動して会議に参加し、マイクが使用中の状態にします。
- タスクトレイのPopGuardのアイコンが緑色になり、状態が「抑止中(マイク使用中)」になったことを確認します。
- この状態で、抑止対象のダイアログを表示させます。
- 抑止対象のダイアログが背面に送られ、前面に表示されないことを確認します。
手順1のタスクトレイのメニューは以下のとおりです。

手順3の抑止中のタスクトレイは以下のとおりです。

通話が終わってマイクが使用中でなくなると、抑止は自動で解除されます。
まとめ
今回はPopGuardの使用方法・設定方法について紹介しました。
PopGuardは、今回紹介したマイク使用中の自動抑止のほか、フォーカス セッションとの連動や、時間を指定した抑止にも対応しています。
興味がありましたら、お問い合わせフォームよりお気軽にご連絡ください。