Windowsの.NETなアプリの場合?には、Process.MainWindowHandleでプロセスのメインフォーム調べてGetForegroundWindowでフォーカスがあるウィンドウと比較して違ってたらつまり「メインウィンドウがフォーカス持ってないのでエラーダイアログ出してるっぽい!」って調べられるのでそれでだいたい済むんでは感><
思考の /dev/null