Ага, спасибо, TGUID Delphi принял
Пересмотрел свой вчерашний код и увидел косяк
Буду исправлять.
Вот, исправленное. Delphi ошибок не находит.
Код:
type
Tfrm_Main = class(TForm)
...
end;
WLAN_INTERFACE_STATE = (wlan_interface_state_not_ready,
wlan_interface_state_connected,
wlan_interface_state_ad_hoc_network_formed,
wlan_interface_state_disconnecting,
wlan_interface_state_disconnected,
wlan_interface_state_associating,
wlan_interface_state_discovering,
wlan_interface_state_authenticating);
WLAN_INTERFACE_INFO = record
InterfaceGuid: TGUID;
strInterfaceDescription: array [1..256] of WChar;
isState: WLAN_INTERFACE_STATE;
end;
PWLAN_INTERFACE_INFO_LIST = record
dwNumberOfItems: dword;
dwIndex: dword;
Network: array of WLAN_INTERFACE_INFO;
end;
var
frm_Main: Tfrm_Main;
implementation
...
function WlanEnumInterfaces(hClientHandle:THandle;
pReserved: pointer;
ppInterfaceList: PWLAN_INTERFACE_INFO_LIST): DWORD;
stdcall; external 'wlanapi.dll' name 'WlanEnumInterfaces';
...
{$R *.dfm}
Ссылки на соответствующие страницы MSDN, от которых отталкивался:
WLAN_INTERFACE_STATE
WLAN_INTERFACE_INFO
PWLAN_INTERFACE_INFO_LIST
Народ, у меня образовалась куча непоняток, я не понимаю, как сделать правильно:
1. Что означает звездочка в С? Она ж не спроста...
Цитата:
GUID *pInterfaceGuid
PWLAN_AVAILABLE_NETWORK_LIST *ppAvailableNetworkList
|
2. Непонятные конструкции:
Цитата:
UCHAR ucSSID[DOT11_SSID_MAX_LENGTH]
|
Цитата:
DOT11_PHY_TYPE dot11PhyTypes[WLAN_MAX_PHY_TYPE_NUMBER]
|
3. Не понял
вот это - то есть
Цитата:
wlanNotConnectableReason: WLAN_REASON_CODE;
|
можно просто поставить DWORD и будет ОК?
4. MSDN: "WLAN_SIGNAL_QUALITY is of type ULONG." (На
этой странице) Многие значения определены типом ULONG. На каком-то форуме нашел, что он соответствует дельфийскому Longint. То есть, можно смело заменять у себя одно другим или есть подводные камни?
В общем, я не знаю, какой Кащей писал этот код, где тип переменной описывается структурой, в типы полей которой вложена пачка других структур, в которых творится тоже самое... Когда все заработает - оформлю в статью и выложу на Хабре, пусть другие пользуются.