RSBasic hat geschrieben:Shardik hat geschrieben:Das verlinkte Windows-Beispiel von RSBasic ermittlet die Hardware GUID, aber nicht die gewünschte MAC-Adresse [...]
Ja, das war beabsichtigt. Eine Lösung zum Ermitteln der MAC-Adresse habe ich bereits anfangs gepostet:
Entschuldigung, ich war nur dem Link in Bisontes Beitrag gefolgt und hatte versäumt, den Link in Deinem 1.Beitrag direkt auf die Frage von stevie1401 zu öffnen!
Allerdings hat das von Dir verlinkte Beispiel von Flype einen großen Nachteil: es untersucht nur den ersten Eintrag einer Netzwerkkarte. So wird auf meinem aktuellen Rechner nur die MAC-Adresse einer virtuellen Netzwerkkarte angezeigt, die mich aber normalerweise nicht interessiert... Daher ist es sicherlich sinnvoller, alle Einträge von Netzwerkkarten auszuwerten. Ich habe dazu ein weiteres Windows-Beispiel erstellt (wieder getestet unter Windows XP SP3 und Windows 7 SP1 x86):
Code: Alles auswählen
EnableExplicit
Define AdapterNumber.I
Define i.I
Define IP.I
Define MacAddress.S
Define MACBufferSize.I = 6
Define MACInfo.S
Define Result.I
Dim MACArray.A(5)
If InitNetwork()
ExamineIPAddresses()
Repeat
IP = NextIPAddress()
If IP
AdapterNumber = AdapterNumber + 1
MacAddress = ""
MACInfo + "Netzwerkkarte " + Str(AdapterNumber) + ": " + "IP-Adresse = " + IPString(IP)
Result = SendARP_(IP, 0, @MACArray(0), @MACBufferSize)
If Result = #NO_ERROR
For i = 0 To 4
MacAddress = MacAddress + RSet(Hex(MACArray(i)), 2, "0") + ":"
Next
MACAddress = MACAddress + RSet(Hex(MACArray(i)), 2, "0")
MACInfo + ", MAC-Adresse = " + MACAddress + #CR$
Else
MessageRequester("Fehler", "Die Ermittlung der MAC-Adresse für IP " +
IPString(IP) + " ist fehlgschlagen!", #MB_ICONEXCLAMATION)
EndIf
EndIf
Until IP = 0
EndIf
MessageRequester("MAC-Adressen", MACInfo, #MB_ICONINFORMATION)
Ich habe auch noch eine Anregung für Deine von mir sehr geschätzte Sammlung von Windows API Beispielen: ich habe schon öfter den Link zu dem Forenbeitrag Deines Beispiels vermisst (wenn das Beispiel aus einem Forenbeitrag kopiert wurde oder darauf aufbaut). In Deinem verlinkten Beispiel also
http://www.purebasic.fr/english/viewtop ... 6&start=13
Denn dieser Link zum Forenbeitrag bringt oft noch einen Mehrwert, weil man über den Link auch andere alternative Beispiele findet (z.B. in diesem Fall ein weiteres Beispiel von ABBKlaus) oder in der Zwischenzeit sogar noch Verbesserungen oder Fehlerbehebungen erschienen sind.