![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Ни как не могу добиться работы отфункции CPlApplet
koha © (2007-02-13 00:20:00)Ни как не могу добиться работы отфункции.
Так-сяк пробовал ни как не могу понять как запустит функцию CPlApplet и как она должна вернуть
параметры.
Подскажите кто знает.
Вот код:
//...........................
Type TCPlApplet = function(hwndCPl: THandle; uMsg: DWORD;lParam1, lParam2: Longint): Longint;
Type NEWCPLINFO = packed record
dwSize: DWORD; // similar to the commdlg
dwFlags: DWORD;
dwHelpContext: DWORD; // help context to use
lData: Longint; // user defined data
hIcon: HICON; // icon to use, this is owned by CONTROL.EXE (may be deleted)
szName: array[0..31] of WideChar; // short name
szInfo: array[0..63] of WideChar; // long name (status line)
szHelpFile: array[0..127] of WideChar; // path to help file to use
end;
//.........................
procedure TFrmMain.BitBtn1Click(Sender: TObject);
Var CPLH: THandle;
PN: Pointer;
Lp: Longint;
CPlApplet: TCPlApplet;
begin
CPLH:=LoadLibrary(PChar(CurPath+'appwiz.cpl'));
if CPLH = 0 then ShowMessage('No Loaded')
else ShowMessage('CPL Loaded');
@CPlApplet:=GetProcAddress(CPLH,'CPlApplet');
if @CPlApplet = Nil then ShowMessage('Function not Find')
else ShowMessage('Function Find');
GetMem(PN,SizeOf(NEWCPLINFO));
try
CPlApplet(CPLH,8,1,PN); // - Вот собственно глючная функция
finally
FreeMemory(PN);
FreeLibrary(CPLH);
end;
end;
koha (2007-02-13 20:42:00) [1]> CPlApplet(CPLH,8,1,PN); // - Вот собственно глючная функция
Проблема в том, что я не понимаю каким способом, как функция должна вернуть структуру данных, не понимаю куда указатель на структуру данных пихать.
clickmaker (2007-02-13 09:41:00) [2]Type TCPlApplet = function(hwndCPl: THandle; uMsg: DWORD;lParam1, lParam2: Longint): Longint; stdcall;