Windows 7 ファイアウォールを強制的に通過させたり、エラーを発生させたりするにはどうすればよいですか?
私のブースト asio UDP ピアツーピア コードは機能していました。今日はうまくいきません。ファイアウォールを確認したところ、開発ディレクトリ内の a.exe は、プライベートおよびパブリック アクセスに対してまだ承認されていました。
直感で、a.exe を a1.exe に名前を変更して実行すると、Windows からネットワークの使用を許可するかどうか尋ねられました。今、それは再び動作します!
私の推測では、windows7 は a.exe のチェックサムを記憶しており、新しい機能をコンパイルしたときにネットワーク アクセスがブロックされましたが、許可されたリストから a.exe を削除するのを忘れたため、ポップアップ リクエストは表示されませんでした。
開発では、毎回新しい名前を使用できますが、これがベータ テスターに展開されると、サポートの悪夢になります。
コード内で承認を確認および/または要求するにはどうすればよいですか?