C++ で各接続がどのポートを使用しているかを判断するために Windows を照会するにはどうすればよいですか?
質問する
685 次
3 に答える
3
TCP テーブルを取得しようとしましたか?
ウィンドウに、ローカル アドレス、ローカル ポート、リモート アドレス、リモート ポート、およびその接続を持つプログラムのプロセス ID を示すすべての TCP 接続のテーブルを要求できます。
テーブルの取得: http://msdn.microsoft.com/en-us/library/windows/desktop/bb408406(v=vs.85).aspx
テーブル エントリ: http://msdn.microsoft.com/en-us/library/windows/desktop/bb485761(v=vs.85).aspx
最初のリンクに良い例があるので、例を作成しようとはしません。両方のタイプの接続が必要な場合は、UDP に相当するものもあります。
于 2013-01-08T21:19:41.017 に答える
2
getsockname() APIを使用して、sockaddr_in 構造体の sin_port フィールドをチェックすることにより、ソケットがバインドされているポートを照会できます。
于 2013-01-08T22:19:34.073 に答える
1
コマンドnetstat -b -a
は Windows で使用できます。必要に応じて、これを呼び出しとしてSHELL
呼び出すことができます。
于 2013-01-08T20:39:47.293 に答える