[Delphi]Hostname

Pagina: 1
Acties:
  • 37 views sinds 30-01-2008

  • Nibble
  • Registratie: Juli 2001
  • Laatst online: 31-08 12:10
Het zal wel niet zo'n euvel zijn, maar ik kan het commando niet vinden om de hostname van de huidige pc waarop mijn programma gaat draaien uit te lezen :)
Zoiets als LOCALHOST, maar dan een echte hostname bijvoorbeeld "PC007" of iets dergelijks.
En als ik dan toch bezig ben, heeft iemand misschien ook een routine om het huidige ip adres uit te kunnen lezen ?

T is for TANK, and T is for TERROR ... and K is the K for KILLING in error.


  • Nibble
  • Registratie: Juli 2001
  • Laatst online: 31-08 12:10
Niemand die dit weet ?

T is for TANK, and T is for TERROR ... and K is the K for KILLING in error.


Verwijderd

GetComputerName

  • WOmBaT
  • Registratie: September 2000
  • Laatst online: 30-11-2025

WOmBaT

Nyaaa!!!

Wel eens van google gehoord?

http://www.google.com/search?sourceid=navclient&querytime=fE8k0B&q=get+hostname+in+delphi

Alsjeblieft en voortaan niet meer binnen 24 uur kicken.

  • Nibble
  • Registratie: Juli 2001
  • Laatst online: 31-08 12:10
Op zondag 19 mei 2002 17:44 schreef WOmBaT het volgende:
Wel eens van google gehoord?

http://www.google.com/search?sourceid=navclient&querytime=fE8k0B&q=get+hostname+in+delphi

Alsjeblieft en voortaan niet meer binnen 24 uur kicken.
tsja zo kan ik ook een vraag beantwoorden :P
Zullen we gathering.tweakers.net dan maar routen naar google.com en een apart huiskamer forum inrichten.. djeez.

T is for TANK, and T is for TERROR ... and K is the K for KILLING in error.


  • WOmBaT
  • Registratie: September 2000
  • Laatst online: 30-11-2025

WOmBaT

Nyaaa!!!

Het gaat erom dat dit een vraag is die zo simpel te beantwoorden is. Gewoon zelf zoeken (een paar woordjes intypen) is toch niet teveel gevraagd? ;)

  • Eegee
  • Registratie: Januari 2000
  • Laatst online: 07-09 22:53
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
interface 

function GetRemoteHostName : String;
function GetRemoteHostIP: String;
function GetLocalHostName : String;
function GetLocalHostIP : String;

implementation

Function GetRemoteHostName : String;
Var
  strIPAddress: string;
  strHost       : String  ;
  pszIPAddress    : PChar    ;
  pReturnedHostEnt : PHostEnt ;
  InternetAddr    : u_long  ;
  GInitData   : TWSADATA ;
Begin
  strIPAddress := GetRemoteHostIP;
  strHost := '';

  // Initialise WinSock
  If WSAStartup( $101, GInitData ) = 0 then
  Begin
    // Convert the IP address string into a network address
    pszIPAddress := StrAlloc( Length( strIPAddress ) + 1 ) ;
    StrPCopy( pszIPAddress, strIPAddress ) ;
    InternetAddr := Inet_Addr( pszIPAddress ) ;
    StrDispose( pszIPAddress ) ;

    // Get Hostinformation
    pReturnedHostEnt := GetHostByAddr( PChar(@InternetAddr), 4, PF_INET ) ;
    if pReturnedHostEnt <> nil then
    strHost := pReturnedHostEnt.h_name
    else
    strHost := 'IP Invalido.' ;

    // Close WinSock
    WSACleanup ;
  End ;
  Result := strHost ;
End ;



function GetRemoteHostIP : string;
// returns ISP assigned IP
type
    TaPInAddr = array [0..10] of PInAddr;
    PaPInAddr = ^TaPInAddr;
var
    phe  : PHostEnt;
    pptr : PaPInAddr;
    Buffer : array [0..63] of char;
    I    : Integer;
    GInitData   : TWSADATA;
begin
    WSAStartup($101, GInitData);
    Result := '';
    GetHostName(Buffer, SizeOf(Buffer));
    phe :=GetHostByName(buffer);
    if phe = nil then Exit;
    pptr := PaPInAddr(Phe^.h_addr_list);
    I := 0;
    while pptr^[I] <> nil do begin
    result:=StrPas(inet_ntoa(pptr^[I]^));
    Inc(I);
    end;
    WSACleanup;
end;

function GetLocalHostName: string;
var
  wVersionRequested : WORD;
  wsaData : TWSAData;
  p : PHostEnt;
  s : array[0..128] of char;
begin
{Start up WinSock}
  wVersionRequested := MAKEWORD(1, 1);
  WSAStartup(wVersionRequested, wsaData);

{Get the computer name}
  GetHostName(@s, 128);
  p := GetHostByName(@s);
  result := StrPas(p^.h_Name);
end;



function GetLocalHostIP: string;
var
  wVersionRequested : WORD;
  wsaData : TWSAData;
  p : PHostEnt;
  s : array[0..128] of char;
  p2 : pchar;
begin
{Start up WinSock}
  wVersionRequested := MAKEWORD(1, 1);
  WSAStartup(wVersionRequested, wsaData);

{Get the computer name}
  GetHostName(@s, 128);
  p := GetHostByName(@s);

{Get the IpAddress}
  p2 := iNet_ntoa(PInAddr(p^.h_addr_list^)^);
  result := StrPas(p2);
end;

Verwijderd

Op zondag 19 mei 2002 17:46 schreef Nibble het volgende:

[..]

tsja zo kan ik ook een vraag beantwoorden :P
Zullen we gathering.tweakers.net dan maar routen naar google.com en een apart huiskamer forum inrichten.. djeez.
Sorry voor de flame maar dit is imho echt vette onzin dat je loopt te blaten!
Dit soort dingen (waar je nu dus om vraagt) zijn gewoon dingen die je wel erg gemakkelijk gewoon bij google kan vinden! Kijk maar eens naar het EERSTE en het TWEEDE resultaat van die google url van WOmBaT !!

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

1
Hoi,
[topic=392390/1/25]
Policy mbt het omhoogschoppen van threads. Wacht minstens 24 uur voor je je topic omhoog schopt. Doe dit dan ook alleen met een zinnige opmerking en dus niet met "Waarom antwoord er nou niemand" nadat je 5 minuten geen antwoord hebt gehad. Sommigen van ons hebben een leven :+
<hr>
2 [topic=397053/1/25]
en een beetje vriendelijker replyen op mensen die wel zoeken zou ook niet weg zijn

Doet iets met Cloud (MS/IBM)

Pagina: 1

Dit topic is gesloten.