Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Wo ist getaddrinfo? (https://www.delphipraxis.net/78374-wo-ist-getaddrinfo.html)

muRR 4. Okt 2006 01:31


Wo ist getaddrinfo?
 
Hallo!
Ich hoffe, dass ihr mir weiterhelfen könnt. Ich stehe vor dem Problem, dass ich eine Internetanwendung basierend auf der hier dokumentierten WinSock-API programmieren wollte und diese anscheinend nicht vollständig in die Unit WinSock implementiert wurde. Zumindest gibt es bei mir die Funktion getaddrinfo nicht. Dabei wird einem doch dringendst zum Gebrauch dieser Funktion anstelle von gethostbyname geraten.
Weiß da jemand mehr?

muRR 4. Okt 2006 13:59

Re: Wo ist getaddrinfo?
 
Hab es jetzt so gelöst, dass ich die Funktion selbst importiere und die benötigten Typen deklariere. Funktioniert nach ersten Tests auch.

Delphi-Quellcode:

uses
  Windows, WinSock;

type
  PAddrInfo = ^TAddrInfo;
  TAddrInfo = packed record
    ai_flags: Integer;
    ai_family: Integer;
    ai_socktype: Integer;
    ai_protocol: Integer;
    ai_addrlen: LongWord;
    ai_canonname: Array of Char;
    ai_addr: PSOCKADDR;
    ai_next: PAddrInfo;
  end;

function getaddrinfo(const nodename: PChar; const servname : PChar; const hints: PAddrInfo; var res: PAddrInfo): Integer; stdcall; external 'ws2_32.dll' name 'getaddrinfo';
procedure freeaddrinfo(ai: PAddrInfo); stdcall; external 'ws2_32.dll' name 'freeaddrinfo';

implementation

...


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:24 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz