C# для плагинов

Все что касается разработки, отладки, использования подключаемых модулей.

Moderators: Korney San, marcipan

Post Reply
Dark_SavanT
Posts: 8
Joined: 01 Mar 2006, 23:37 Wed
Contact:

C# для плагинов

Post by Dark_SavanT »

попытался портировать тестовый плагин на C#. переписал, но dll'ку ДМ не видит.

Есть подозрение, что проблема заключается в "IDMInterface = interface(IUnknown)" т.к. я не знаю в C# аналога даннному интерфейсу, посему пришлось данный момент опустить...

архив с исходником могу отослать на e-mail, т.к. тут положить нельзя.
AntStas
Posts: 1
Joined: 02 Apr 2006, 7:39 Sun

Post by AntStas »

У плагинов, которые DM видит, в экспортах у DLL есть функция RegisterPlugIn, в твоем варианте на C# она там вряд ли появится...
(см dumpbin.exe /exports, поставляется с VS) Потому DM ее и игнорирует

Code: Select all

H:\Program Files\Microsoft Visual Studio 8\VC\bin>dumpbin.exe /exports "h:\Program Files\Download Master\Plugins\advscheduler.dll"

  Section contains the following exports for advscheduler.dll

    ordinal hint RVA      name

          1    0 0008C920 RegisterPlugIn
А вообще мне самому тоже очень хотелось бы DM API на VS С++, но научить VS экспортировать классы из библиотек Borland, это довольно-таки сложно...
mymigor
Бывалый
Posts: 17
Joined: 28 Mar 2006, 13:34 Tue

Post by mymigor »

Я интересовался на net-ном форуме.

Экспортировать функцию в Net в принципе возможно, но для этого надо использовать unmanaged С++, или ручками декомпилировать сборку в IL и править.

А насчет IUnknown, наверное Delphi.Net из Delphi 2006 может помочь, но о unmanaged С при этом надо забыть.

Т.е. писать плагин в Delphi.net, присоединять сборку в VC к С++ и еще с непредсказемыми последствиями.

В общем, гемороя больше, чем потенциально получаемый результат.
Post Reply