Только для тех, кто пишет плагины под Total Commander. Обмен опытом, решение проблем.
Модераторы: d-view , Моторокер , Avada , CaptainFlint , Nik
Hram
Сообщения: 113 Зарегистрирован: Чт май 19, 2005 20:14
Откуда: Питер
Сообщение
Hram » Вс авг 19, 2007 04:17
Подскажите пожалуйста как правильно объявить функции в плагине для Borland C++ Builder 5.0
DllEntryPoint тотал вызывает, а остальные не хочет. Делаю я след. образом:
Код: Выделить всё
*.h
extern "C" __declspec(dllexport)
int __stdcall FsInit(int PluginNr,tProgressProc pProgressProc,tLogProc pLogProc,tRequestProc pRequestProc);
*.cpp
int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved)
{
return 1;
}
extern "C" int __stdcall FsInit(int PluginNr,tProgressProc pProgressProc,tLogProc pLogProc,tRequestProc pRequestProc)
{
return 1;
}
.....
Все 4 функции FsInit(), FsFindFirst(), FsFindNext() и FsFindClose() объявленны. В чем дело не могу понять. Спасибо.
Athari
Сообщения: 81 Зарегистрирован: Сб дек 18, 2004 23:37
Откуда: Казань
Контактная информация:
Сообщение
Athari » Пн авг 20, 2007 18:41
Посмотри таблицу экспорта в библиотеке, там какие функции есть и как они выглядят?
Лично у меня в CPP-файле, безо всяких заголовочных, просто extern "C" __declspec(dllexport) тип __stdcall (…).
Последний раз редактировалось
Athari Пн авг 20, 2007 18:59, всего редактировалось 1 раз.
«Today is the first day of the rest of your life»
Hram
Сообщения: 113 Зарегистрирован: Чт май 19, 2005 20:14
Откуда: Питер
Сообщение
Hram » Вт авг 21, 2007 00:38
Спасибо огромное.
Я пробовал по всякому. И из примера ListSimple тоже.
Но ничего не получалось. Когда уже все было перепробовано решил написать на форум так как стал сомневаться в себе.
Сегодня попробовал еще раз как написал Athari и посоветовал Alextp.
Сначала безрезультатно. Оказалось, что проблема в плагине pm, так как я через него свой устанавливал. Решил попробовать классическим способом и все заработало. Спасибо всем огромное, если б не вы думал бы, что у меня проблема и еще долго мучался.