Вниз
Скачать: 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.011 c
14-1151
Val
2002-05-28 19:11
2002.07.01
массивы открытого типа в С/С++


3-859
ORFO
2002-06-06 11:36
2002.07.01
Как сохранить результат фильтра таблицы в файл?


1-1053
ValeX
2002-06-18 18:54
2002.07.01
этот код не работает, в файл не пишет :(


3-851
Jim
2002-06-05 10:21
2002.07.01
Не могу запустить Oracle...


1-1003
Bocman
2002-06-20 14:45
2002.07.01
Немного не по теме...




   Наверх