Здравствуйте, molostov, Вы писали:
M>Из библиотек экспортируются только функции. Но эту задачу можно решить другим способом.
M>В библиотеке описать экспортируемую функцию, которая будет принимать все необходимые параметры (имена файлов, форматы, опции и т.д.). В этой функции работать со своим классом (он является внутренним классом библиотеки). Вот и все.
неа. из dll можно экспортировать как класс, так и обычную переменную.
оформляется примерно также.
// h-файл
#ifdef DLL0_EXPORTS
#define DLL0_API __declspec(dllexport)
#else
#define DLL0_API __declspec(dllimport)
#endif
// This class is exported from the dll0.dll
class DLL0_API CDll0 {
public:
CDll0(void);
};
extern DLL0_API int nDll0;
DLL0_API int fnDll0(void);
// cpp-файл
// This is an example of an exported variable
DLL0_API int nDll0=0;
// This is an example of an exported function.
DLL0_API int fnDll0(void)
{
return 42;
}
// This is the constructor of a class that has been exported.
// see dll0.h for the class definition
CDll0::CDll0()
{
return;
}
зы. только зачем же такой экспорт-файл писать загадочный?...