To be honest, I'm really surprised to see some locale string as a device Name. Never seen anything like this. Can you reproduce this on other Computers that also have those names?
In the meantime, let's try
GetAdaptersAddresses(..)
instead:
Delphi-Quellcode:
program Project1;
{$APPTYPE CONSOLE}
{$R *.res}
uses
System.SysUtils,
// For RaiseLastOSError
Winapi.IpTypes,
Winapi.IpHlpApi,
Winapi.Windows,
WinApi.WinSock2
// For AF_xxx
;
const
skipFriendlyName: Boolean = False;
var
flags: DWORD;
addresses: PIP_ADAPTER_ADDRESSES;
buffSize: ULONG;
returnValue: ULONG;
begin
flags := 0;
if skipFriendlyName
then
flags := flags
or GAA_FLAG_SKIP_FRIENDLY_NAME;
addresses := new(PIP_ADAPTER_ADDRESSES);
buffSize := SizeOf(addresses^);
returnValue := GetAdaptersAddresses(
AF_UNSPEC,
// Return both IPv4 and IPv6 addresses associated with adapters with IPv4 or IPv6 enabled.
flags,
nil,
addresses,
Addr(buffSize)
);
// Buffer to small? buffSize already got changed, just do it again
if returnValue = ERROR_BUFFER_OVERFLOW
then
returnValue := GetAdaptersAddresses(
AF_UNSPEC,
flags,
nil,
addresses,
Addr(buffSize)
);
if returnValue <> ERROR_SUCCESS
then
RaiseLastOSError();
while Assigned(addresses)
do begin
WriteLn('
Adapter Name: '+addresses.AdapterName);
WriteLn('
Friendly Name: '+addresses.FriendlyName);
WriteLn('
Description: '+addresses.Description);
WriteLn(sLineBreak);
addresses := addresses.Next;
end;
Readln;
end.
That gets me
Code:
Adapter Name: {5778C186-FC70-4E1B-91C2-55B230B54B0F}
Friendly Name: LAN-Verbindung
Description: Realtek PCIe GBE Family Controller
Adapter Name: {823AF0FA-25AF-4942-88C2-1048BCF6B989}
Friendly Name: VMware Network Adapter VMnet1
Description: VMware Virtual Ethernet Adapter for VMnet1
Adapter Name: {04B9E40E-82C6-41F7-B365-34C90086AED1}
Friendly Name: VMware Network Adapter VMnet8
Description: VMware Virtual Ethernet Adapter for VMnet8
Adapter Name: {846EE342-7039-11DE-9D20-806E6F6E6963}
Friendly Name: Loopback Pseudo-Interface 1
Description: Software Loopback Interface 1
Adapter Name: {57FBDD6B-EA00-4580-B520-7B5F254236CD}
Friendly Name: isatap.MyFancyCompany.local
Description: Microsoft-ISATAP-Adapter
Adapter Name: {AC3A8F85-921D-4F6A-A213-969C9AFD77BC}
Friendly Name: Teredo Tunneling Pseudo-Interface
Description: Teredo Tunneling Pseudo-Interface
Adapter Name: {16F898BB-DFC0-4C64-A298-55975DAFBCF8}
Friendly Name: isatap.{823AF0FA-25AF-4942-88C2-1048BCF6B989}
Description: Microsoft-ISATAP-Adapter #3
Adapter Name: {860710BE-74C2-4A45-9C0E-6BA4C0E6313C}
Friendly Name: isatap.{04B9E40E-82C6-41F7-B365-34C90086AED1}
Description: Microsoft-ISATAP-Adapter #2