Не вызывается

Место, где разработчики плагинов могут поделиться своим опытом.
Post Reply
User avatar
canegor
Posts: 7
Joined: Wed 12 Jul, 2006 10:29
Location: Челябинск

Не вызывается

Post by canegor »

:? Люди помогите - пробую сделать минимальный плагин как написано на сайте - но там для VC, а у меня: Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland


Не Вызывается FAR-м функция SetStartupInfo(struct PluginStartupInfo *Info) - я не могу получить жизненно важные для плугина адреса сервисных функций

При этом отлично отрабатывают OpenPlugin(int, int) и GetPluginInfo(struct PluginInfo *Info)

Я не разбираюсь во всяких там _export или __declspec(dllexport) и думаю дело именно в этом - в спецификаторах описания функции.


Уже как только не писал. Как надо правильно в этом компиляторе?
User avatar
canegor
Posts: 7
Joined: Wed 12 Jul, 2006 10:29
Location: Челябинск

Post by canegor »

видимо придется все таки разбираться - посмотрел tdump :(

Exports from farplugin.dll
4 exported name(s), 4 export addresse(s). Ordinal base is 1.
Sorted by Name:
RVA Ord. Hint Name
-------- ---- ---- ----
00001238 1 0000 __stdcall SetStartupInfo(PluginStartupInfo *)
00001268 2 0001 GetPluginInfo
000012C4 3 0002 OpenPlugin
00009158 4 0003 ___CPPdebugHook
User avatar
canegor
Posts: 7
Joined: Wed 12 Jul, 2006 10:29
Location: Челябинск

Сравниваю с нормальным плагином

Post by canegor »

Сравню с "нормальным", работающим плагином:

Section: Exports
Flags: 00000000
Time Stamp: 00000000
Major Version: 0000
Minor Version: 0000

Exports from FarFtp.dll
18 exported name(s), 18 export addresse(s). Ordinal base is 1.
Sorted by Name:
RVA Ord. Hint Name
-------- ---- ---- ----
0000C968 6 0000 ClosePlugin
0000CF80 17 0001 Compare
0000C810 4 0002 Configure
0000CD64 13 0003 DeleteFiles
0000C4CC 1 0004 ExitFAR
0000CAC8 8 0005 FreeFindData
0000CBD0 11 0006 GetFiles
0000C98C 7 0007 GetFindData
0000CB08 9 0008 GetOpenPluginInfo
0000C574 3 0009 GetPluginInfo
0000CDF4 14 000A MakeDirectory
0000C838 5 000B OpenPlugin
0000CF30 16 000C ProcessEvent
0000CEE8 15 000D ProcessKey
0000CCD0 12 000E PutFiles
0000CB44 10 000F SetDirectory
0000C4D8 2 0010 SetStartupInfo
00034194 18 0011 ___CPPdebugHook

ага :P
User avatar
canegor
Posts: 7
Joined: Wed 12 Jul, 2006 10:29
Location: Челябинск

Увы-увы

Post by canegor »

:shock: увы. убрал лишние квалификаторы - получил:


Exports from farplugin.dll
4 exported name(s), 4 export addresse(s). Ordinal base is 1.
Sorted by Name:
RVA Ord. Hint Name
-------- ---- ---- ----
00001238 1 0000 SetStartupInfo(PluginStartupInfo *)
00001268 2 0001 GetPluginInfo
000012C4 3 0002 OpenPlugin
00009158 4 0003 ___CPPdebugHook

Так! А что это за хвостик - хрень (PluginStartupInfo *)?
Искажение имен что ли - счас extern попробуем воткнуть
User avatar
canegor
Posts: 7
Joined: Wed 12 Jul, 2006 10:29
Location: Челябинск

Post by canegor »

погоди - какой еще extern - экспортируемая а не импортируемая
User avatar
canegor
Posts: 7
Joined: Wed 12 Jul, 2006 10:29
Location: Челябинск

Post by canegor »

Ура я победил - согнулись шведы!

Exports from farplugin.dll
4 exported name(s), 4 export addresse(s). Ordinal base is 1.
Sorted by Name:
RVA Ord. Hint Name
-------- ---- ---- ----
00001238 1 0000 GetPluginInfo
000012C4 3 0001 OpenPlugin
0000127C 2 0002 SetStartupInfo
00009158 4 0003 ___CPPdebugHook

все зафурычило!
однако по моделям вызова и экспорту функций придется литературу почитать
User avatar
Skirda
Posts: 3475
Joined: Wed 16 Mar, 2005 11:01
Been thanked: 8 times

Post by Skirda »

Ну видишь как здорово получилось - в форуме сам с собой 42 минуты пообЧался и все получилось! :D
User avatar
WARP ItSelf
Самый умный
Posts: 1011
Joined: Tue 15 Mar, 2005 23:19
Contact:

Post by WARP ItSelf »

canegor

А за неумение пользоваться кнопкой "правка" получилось предупреждение за флуд.
Никто не знал, а я...
User avatar
canegor
Posts: 7
Joined: Wed 12 Jul, 2006 10:29
Location: Челябинск

Post by canegor »

Ну и хрен тогда с Вашим форумом - Все равно самому разбираться :x
User avatar
[e]Bu$ter
Posts: 792
Joined: Mon 30 May, 2005 23:05
Location: Беларусь, Минск
Contact:

Post by [e]Bu$ter »

canegor wrote:Ну и хрен тогда с Вашим форумом - Все равно самому разбираться :x
Ну удачи тебе!
Post Reply

Return to “Разработка плагинов”