| |
|
|
| KompilierenMarqueSéparationSource wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Internet: aktuelle IP-Adresse(n) auslesen
+-----------------------------------------------------------------+
| enumip.prf - IP-Adressen aufzählen |
| Autor: Sebastian König |
| email: feedback@sekoenig.de |
| Homepage: http://www.sekoenig.de |
| Copyright ©2001 Sebastian König |
| |
| Dieser Quellcode demonstriert, wie alle aktuellen IP-Adressen |
| ausgelesen werden können. |
| |
+-----------------------------------------------------------------+
---Benötigte Funktionen definieren:
DEF WSAStartup(2) !WS2_32.DLL,WSAStartup
DEF WSACleanup(0) !WS2_32.DLL,WSACleanup
DEF gethostname(2) !WS2_32.DLL,gethostname
DEF gethostbyname(1) !WS2_32.DLL,gethostbyname
DEF inet_ntoa(1) !WS2_32.DLL,inet_ntoa
---Variablen deklarieren:
declare WSADATA#,hostname#
declare pHostent&,pArray&,ip&
declare count%
---Bereichsvariablen dimensionieren:
dim WSADATA#,14
dim hostname#,100
---WS2_32.DLL laden:
declare hDll&
let hDll& = UseDLL(WS2_32.DLL)
---Neues Fenster erstellen:
windowtitle Aktuelle IP-Adresse(n) ermitteln
window 100,100-400,300
---Windows Sockets initialisieren:
WSAStartup($0101,WSADATA#)
---Host-Info ermitteln:
gethostname(hostname#, 100);
pHostent& = gethostbyname(hostname#)
---IP-Adressen aus HOSTENT-Struktur auslesen:
let pArray& = @long(pHostent&,16)
let count% = 0
print Hostname:,@string$(hostname#,0)
print
print IP-Adresse(n):
while @byte(pArray&,@add(count%,4))
IP in String umwandeln...
ip& = inet_ntoa(@long(pArray&,count%))
...und ausgeben
print @string$(ip&,0)
add count%,4
wend
print
print Mit Taste oder Mausklick beenden!
waitinput
---Aufräumen:
WSACleanup()
FreeDLL hDll&
dispose WSADATA#
dispose hostname#
---Ende:
4 href='./../../funktionsreferenzen/XProfan/end/'>end
|
|
|
| |
|
|