2

GetTcpTable()でポート番号とプロセスIDを見つけました。PIDはプロセスのみを識別しますが、svchost.exeなどのプロセス内のサービスが実際にポートを使用している必要があります。sysinternalsの「procexp」ツールは、サービスとともにTCP/IPポートを表示します。これらのポートを使用して、[TCP / IP]タブで...このような機能を実装するためにwin32apiが何を使用する必要があるか知りたいですか?または他の方法で実装する方法は?

4

1 に答える 1

1

まず、 TCP_TABLE_OWNER_MODULE_ALLフラグを使用して、TCP や UDP などのテーブルの 1 つからポート情報を照会すると、情報を含むテーブルが取得されます。テーブルの各行GetOwnerModuleFromTcpEntry()IpHlper APIに送信します。これで、特定のポートで実行されているプロセス名またはサービス名のいずれかである ModuleName が取得されます。この moduleName から、サービスまたはプロセスに関するその他の情報を取得できます。

于 2013-03-01T09:42:07.480 に答える