Перепробывал уже весь имеющийся код в интернете. Но создать рабочую dll не получается. Код который предложен на msdn создает dll и её можно загрузить статическим способом, но динамически опять фейл. Создаю dll на ассемблере и легко получаю адрес функции через LoadLibrary и GetProcAddress, но создать dll на С++ и получить адрес через GetProcAddress не представляется возможным. Борьба идёт не первый день, результат нулевой. Я бы мог понять если бы dll не создавались, но они создаются, но не работают. Возможно где-то в самих настройках компиляции не хватает какого-то волшебного пункта, танцы с бубном замахали, если смотреть в Ida Pro то dll но экспортные функции определяются правильно. Если возможно дайте минимальный код для dll и возможные настройки компилятора.
Всё же разработчик fasma Tomasz Grysztar куда как умнее ребят в С++. Для того что бы понять как это делается в fasme достаточно посмотреть один маленький пример. Для того что бы разобраться как это делать в C++ надо туеву хучу времени, создать три файла с черт пойми каким синтаксисом и всё равно быть в недоумении. Чем дальше тем сильнее меня С++ разочаровывает. Рабочий код для динамической загружаемой библиотеки состоит из 3 файлов: Dll3.cpp: Код (Text): #include "stdafx.h" #include "Dll3.h" int WINAPI DllMain(HINSTANCE hInstance, DWORD fdReason, PVOID pvReserved) { return TRUE; } EXPORT int CALLBACK MyFunction() { MessageBox(NULL, 0, 0, MB_OK); return 1; } Dll3.h: Код (Text): #define EXPORT extern "C" __declspec (dllexport) EXPORT int CALLBACK MyFunction(); Dll3.def Код (Text): LIBRARY "Dll3" DESCRIPTION 'DLL3-библиотеки' EXPORTS MyFunction @1
спасибо за помощь, 5 часов мучался, оказывается скобки не там поставил, млинннннннннн и ведь нигде даже намёка на ошибку не выдаёт!!!!