Função IcmpCreateFile (icmpapi.h)
A função IcmpCreateFile abre um identificador no qual as solicitações de eco ICMP IPv4 podem ser emitidas.
Sintaxe
IPHLPAPI_DLL_LINKAGE HANDLE IcmpCreateFile();
Valor retornado
A função IcmpCreateFile retorna um identificador aberto com êxito. Em caso de falha, a função retorna INVALID_HANDLE_VALUE. Chame a função GetLastError para obter informações de erro estendidas.
Comentários
A função IcmpCreateFile é exportada do Icmp.dll no Windows 2000. A função IcmpCreateFile é exportada do Iphlpapi.dll no Windows XP e posterior. A verificação de versão do Windows não é recomendada para usar essa função. Aplicativos que exigem portabilidade com essa função no Windows 2000, Windows XP, Windows Server 2003 e versões posteriores do Windows não devem vincular estaticamente ao arquivo Icmp.lib ou Iphlpapi.lib . Em vez disso, o aplicativo deve marcar para a presença de IcmpCreateFile no Iphlpapi.dll com chamadas para LoadLibrary e GetProcAddress. Caso contrário, o aplicativo deve marcar para a presença de IcmpCreateFile no Icmp.dll com chamadas para LoadLibrary e GetProcAddress.
Para IPv6, use as funções Icmp6CreateFile, Icmp6SendEcho2 e Icmp6ParseReplies .
Observe que a diretiva include para o arquivo de cabeçalho Iphlpapi.h deve ser colocada antes do arquivo de cabeçalho Icmpapi.h .
Exemplos
O exemplo a seguir abre um identificador no qual as solicitações de eco ICMP podem ser emitidas.
#include <windows.h>
#include <stdio.h>
#include <iphlpapi.h>
#include <icmpapi.h>
// Need to link with Iplhlapi.lib
#pragma comment(lib, "IPHLPAPI.lib")
void main()
{
HANDLE hIcmpFile;
hIcmpFile = IcmpCreateFile();
if (hIcmpFile == INVALID_HANDLE_VALUE) {
printf("\tUnable to open handle.\n");
printf("IcmpCreatefile returned error: %ld\n", GetLastError() );
}
else {
printf("\tHandle created.\n");
// Need to close the handle when done using it
IcmpCloseHandle(hIcmpFile);
}
}
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | icmpapi.h |
Biblioteca | Iphlpapi.lib |
DLL | Iphlpapi.dll no Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP; Icmp.dll no Windows 2000 Server e no Windows 2000 Professional |
Confira também
IcmpSendEcho