tengo otra consulta, hay algo que no comprendo bien del código que pusiste arriba porque utilizas las funciones OpenProcess y GetModuleName en las siguientes líneas:
Código C++:
Ver originalif((hproc = OpenProcess(PROCESS_QUERY_INFORMATION|PROCESS_VM_READ, 0, proc_owner->dwOwningPid))) {
if(GetModuleBaseName(hproc, 0, base_name, sizeof(base_name))) {
for(q = 0; q < 4; q++) {
ipv4_address[q] = ( proc_owner->dwLocalAddr >> (q*8) ) & 0xFF;
}
printf("\tLocal\t%d.%d.%d.%d : %d\n", ipv4_address
[0], ipv4_address
[1], ipv4_address
[2], ipv4_address
[3], (int)ntohs
(proc_owner
->dwLocalPort
));
for(q = 0; q < 4; q++) {
ipv4_address[q] = ( proc_owner->dwRemoteAddr >> (q*8) ) & 0xFF;
}