• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

class from dll

  • Автор темы Hsilgos
  • Дата начала
Статус
Закрыто для дальнейших ответов.
H

Hsilgos

Народ! Кто-нибудь может дать ответ, как мне загрузить класс из DLL-ки ???
 
P

Pete

А разве такое возможно? Или все-таки объект класса? Берешь Visual C++ 6.0 создаешь dll-проект, вижал автоматицки создаст примеры для экспорта функций и объектов.
 
G

Guest

да да, галоўнае каб класы былі сінхранізаваны ў *.dll and *.exe.
Ну канешне калі няведаеш трэба цераз функцыі ўказнікі на аб'екты вяртаць.
Наконт выдалення мабыць лепей каб з *.dll выдалялася, бо ў *.dll свая лакальная куча, калі не памыляюся.

Код:
//---------EXE----------------------------------------
interface IObj
{
virtual Draw() = 0;
};

class X : public IObj
{
};

typedef void (*GetObj)(IObj*);
typedef void (*DelObj)(IObj*);

void main()
{
HMODULE module = LoadLibrary("name.dll");
GetObj obj_fn = GetProcAddress(module, "GetObj");
DelObj del_fn = GetProcAddress(module, "DelObj");
IObj*ptr;//пакуль не ініцыалізаваны
obj_fn(ptr);//ініцыялізуем
ptr->Draw();//ужо працуе
del_fn(ptr);// САМАЕ ЛЕПШАЕ І НАДЗЕЙНАЕ
}
//---------EXE----------------------------------------

????: чуть-чуть поправил оформление, для лучшего восприятия.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!