Здравствуйте уважаемые!
Подскажите как быть с плагинами.
Есть у меня класс который по указателю передается с приложения в dll.
class IPlugin
{
public:
IPlugin(void);
virtual ~IPlugin(void);
// злостная функция :crash:
const bool QuerySetVar(const string& name, const string& val) const;
const string QueryGetVar(const size_t var) const;
};
Dll вызывает функцию QuerySetVar в которую передает аргумент типа string.
В QuerySetVar аргумент присваивается новому объекту string который выделяется динамически.
Но после того как мое приложение уничтожаєт копию аргумента я получаю ошибку нарушения доступа в:
extern "C" static int __cdecl CheckBytes(
unsigned char * pb,
unsigned char bCheck,
size_t nSize
)
Подозреваю что что так делать нельзя.
Колеги помогите разобраться пожалуйста. Посоветуйте литературу или статьи по даному поводу.
Как мне с dll поменять значение динамического объект string в exe