The code is very simple to use, you call a procedure passing a callback procedure as its argument (just like for example win32 api EnumChildWindows)
WepKeys.zip
Code:unit uMain; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TFrmMain = class(TForm) mmoLog: TMemo; btnDump: TButton; procedure btnDumpClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var FrmMain: TFrmMain; implementation uses uWEPUtils, uUtils; {$R *.dfm} //This is your callback function: we print the result on a TMemo named mmoLog function GetDataCallBack( DataType: Cardinal; Data: Pointer; DataSize: Cardinal ): Boolean; begin case DataType of 1: //WiFi Network Interface GUID begin FrmMain.mmoLog.Lines.Add(PAnsiChar(Data)); end; 2: //HOT-SPOT name begin FrmMain.mmoLog.Lines.Add(PAnsiChar(Data)); end; 3: //HOT-SPOT stored Wep Key: DumpData is a function defined in unit //uUtils which dumps a buffer in Hex Editor style begin FrmMain.mmoLog.Lines.Add(DumpData(Data, DataSize)); end; end; end; procedure TFrmMain.btnDumpClick(Sender: TObject); begin // mmoLog.Lines.Clear; //It is so simple ... we call GetWZCSVCData (defined in unit uWepUtils) //passing our callback function GetWZCSVCData(@GetDataCallBack); end;





Zitieren
