Pour:taille du tampon pour GetAdaptersInfo
DWORD GetAdaptersInfo(
__out PIP_ADAPTER_INFO pAdapterInfo,
__inout PULONG pOutBufLen
);
La description de pOutBufLen
est la suivante:
pOutBufLen
[in, out] Pointeur à la taille, en octets, du buffer indiqué par le paramètre pAdapterInfo. Si cette taille est insuffisante pour contenir les informations de l'adaptateur, cette fonction remplit la mémoire tampon avec la taille requise et renvoie un code d'erreur ERROR_BUFFER_OVERFLOW.
Maintenant, ma question est que comment pouvons-nous savoir quelle devrait être la taille de la mémoire tampon, c'est-à-dire pOutBufLen? Et quelle est la bonne façon si nous avons plus de 16 cartes réseau?
Source msdn
oh, donc la fonction fonctionne de deux façons. bonne réponse merci :) –
N'oubliez pas de lancer le retour de malloc car il est marqué C++. –
Oui je sais, merci pour le headsup :) (PIP_ADAPTER_INFO) malloc (dwBufLen) i.e si nous utilisons PIP_ADAPTER_INFO au lieu de IP_ADAPTER_INFO –