を取得する可能性の重複:
Delphi, How to get all local IPs?は、Delphi
サードパーティのコンポーネントを使用せずにデルファイ2009年のマシンのローカルIPアドレスを取得するための最も簡単な&最速の方法は何ですか?ありがとう。
を取得する可能性の重複:
Delphi, How to get all local IPs?は、Delphi
サードパーティのコンポーネントを使用せずにデルファイ2009年のマシンのローカルIPアドレスを取得するための最も簡単な&最速の方法は何ですか?ありがとう。
から:http://www.scalabium.com/faq/dct0037.htm
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Winsock;
Function GetIPAddress():String;
type
pu_long = ^u_long;
var
varTWSAData : TWSAData;
varPHostEnt : PHostEnt;
varTInAddr : TInAddr;
namebuf : Array[0..255] of char;
begin
If WSAStartup($101,varTWSAData) <> 0 Then
Result := 'No. IP Address'
Else Begin
gethostname(namebuf,sizeof(namebuf));
varPHostEnt := gethostbyname(namebuf);
varTInAddr.S_addr := u_long(pu_long(varPHostEnt^.h_addr_list^)^);
Result := 'IP Address: '+inet_ntoa(varTInAddr);
End;
WSACleanup;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.Caption := GetIPAddress;
end;
end.
投票はnamebufの種類を変更した後http://stackoverflow.com/questions/576538/delphi-how-to-get-all-local-ips – mghie