|
|
|
написание plug-in'ов
|
|||
|---|---|---|---|
|
#18+
Есть основное приложение, написанное, например, на С++ Билдере. К нему должно прикручиваться неограниченное кол-во модулей сторонних производителей. Пример: outpost + плагины *.dll. Как это делается? Имеется в виду какие существуют для этого методы/классы/библиотеки и т.д. Ведь проблема в том, что при использовании определенной dll сначала делается implib и ссылки вставляются в основную программу. А как быть, когда заранее не известно ни количества dll, не их названия. Допустим, что известно только название некой функции, стандартизированной для всех плагинов. Короче вопрос - как динамически, во время исполнения, подлинковывать модули? Posted via ActualForum NNTP Server 1.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2005, 17:07 |
|
||
|
написание plug-in'ов
|
|||
|---|---|---|---|
|
#18+
hLib = LoadLibrary("module1.dll"); if (! hLib) { failed("Can not load library"); return; } typedef VOID (*MYPROC)(int, char*); MYPROC fImportedFunction; fImportedFunction = GetProcAddress(hLib, "InitModule"); if (! fImportedFunction) { failed("No init function, wrong module?"); return; } fImportedFunction(1, "aaa"); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2005, 17:56 |
|
||
|
|

start [/forum/topic.php?fid=57&tid=2033138]: |
0ms |
get settings: |
6ms |
get forum list: |
20ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
49ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 208ms |
| total: | 360ms |

| 0 / 0 |
