Есть под которую пишутся плагины, изначально на свевозможных вариантах С++, пробовали на Delphi, на C вместе с Qt
Вот теперь захотелось диковинки в виде C#
Плагин это dll экспортирующая несколько функций. Обломился на первой же. Той которая возвращает заполненную структуру с информацией о плагине
На C это как-то так:
typedef struct {
char name[101];
char describe[201];
char vendor[201];
short version;
short subversion;
}PLUGININFO;
typedef PLUGININFO* LPPLUGININFO;
/// И потом
RCPLUGINCALLTYPE void GetPluginInfo(LPPLUGININFO lpPluginInfo)
{
if (lpPluginInfo) {
strcpy(lpPluginInfo->name, PLUGIN_NAME);
strcpy(lpPluginInfo->describe, PLUGIN_DESCRIBE);
strcpy(lpPluginInfo->vendor, "ООО \"Вендор\"");
lpPluginInfo->version = PLUGIN_VERSION;
lpPluginInfo->subversion = PLUGIN_SUB_VERSION;
}
}
На самом деле там вариации на тему, кто делает memcpy с уже заполненной, кто по полям как тут.
Пока не понимаю как описать даже саму структуру. Может чего надоумите.
С C# опыт нулевой.