Вниз
Скачать: CL | DM;

Вызов функции   Найти похожие ветки 

← →
Balabolin Oleg ©   (2002-06-20 09:37) [0]

Может кто сможет помочь, а то я уже...

Надо написать dll - plugin к одной проге... На Дельфи
Пример такой dll ки есть, но на C

Все попытки перевести это хозяйство из C в Delphi потерпели неудачу...
Я уже совсем запутался в этих указателях, и прога постоянно вылетает с Access Violation :(

Может кто-нибудь сможет написать прототипы функций в Delphi?

Часть кода примера на С...
typedef struct PtPluginInfo_ {
DWORD dwSize;
FARPROC lpfnProcPtr;
DWORD dwProcParam;
DWORD dwType;
LPSTR lpszName;
LPVOID lpTypeInfo;
} PtPluginInfo, *LPPtPluginInfo;

LPPtPluginInfo lpInfo = NULL;

WORD PluginInitModule(LPPtPluginInfo *lpPluginInfo, LPWORD lpwItems)
{
lpInfo = (LPPtPluginInfo)LocalAlloc(LPTR, sizeof(PtPluginInfo) * iCount);



*lpPluginInfo = lpInfo;

*lpwItems = iCount;

}


← →
Игорь Шевченко ©   (2002-06-20 10:00) [1]

А вы что написали ? Мне было бы удобнее исправлять ошибки (есть есть) в вашем коде.

С уважением,


← →
PVOzerski ©   (2002-06-20 11:10) [2]

type
PtPluginInfo=packed record
dwSize:DWORD;
lpfnProcPtr:FARPROC;
dwProcParam,
dwType:DWORD;
lpszName:LPSTR;
lpTypeInfo:pointer;
end;
LPPtPluginInfo=^PtPluginInfo;

var
lpInfo:LPPtPluginInfo=nil;

type //эти 2 декларации - на случай, если pwItems - массив
tWord=array[0..0]of word;
LPWORD=^tWord;

function PluginInitModule(var lpPluginInfo:LPPtPluginInfo; pwItems:LPWORD):word;cdecl;
begin
lpInfo:=LPPtPluginInfo(LocalAlloc(LPTR,sizeof(PtPluginInfo)*iCount));



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.009 c
1-1105
ZEE
2002-06-12 15:12
2002.07.01
System Menu


1-1042
finger
2002-06-17 12:38
2002.07.01
Диалоговые окна


1-982
Сергей Б.
2002-06-20 10:57
2002.07.01
Выделение строк в TListBox


1-975
tovSuhov
2002-06-20 10:19
2002.07.01
Люди! Как юзать Splitter?


14-1201
vopros
2002-05-28 12:32
2002.07.01
Вот загадки прислали:




   Наверх