Windowsのアプリがエラー出てるかどうか判定、.NETの場合はwin32apiのIsWindowEnabled()使ってWS_DISABLED状態であるか調べれば、アプリケーションエラーのダイアログが出てるかわかるっぽい><
(言い方を変えると、つまり勝手にWS_DISABLEDにしてるっぽい)
もっと低レベルのエラー出してシステムに怒られてる場合(たとえばメモリ保護違反とか)は、それでは検出出来ないっぽい><
システム側がダイアログ出すアプリケーションエラーであればシステムのイベントログに記録されるので、System.Diagnostics.EventLogでEntryWrittenイベントで検出すればいいっぽい><(アプリケーションエラーの取得だけなら管理者権限不要っぽい><)
https://docs.microsoft.com/en-us/dotnet/api/system.diagnostics.eventlog.entrywritten?view=dotnet-plat-ext-6.0
これ参考にしてイベントでe.Entry.ReplacementStringsの中身見るだけで出来た><
もしかしてこれだと単にモーダルのダイアログを出してるか検出してるだけって事になる?><;