Witam.
Zrobiłem sobie własna kontrolkę i chcę ją zapiąć w dll. Mam więc tak:
-PlikDll.cpp z którego chcę zrobić dll o zawartości:
#include"Plik.h"
ATOM RegisterZegarek(HINSTANCE hInstance,WNDPROC ZegarekProc1){....}
LRESULT CALLBACK ZegarekProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam){...}
-Plik.h o zawartosci:
extern "C" LRESULT CALLBACK __declspec(dllexport) ZegarekProc(HWND, UINT, WPARAM , LPARAM );
extern "C" ATOM __declspec(dllexport) RegisterZegarek(HINSTANCE,WNDPROC);
-Plik.cpp wykonawczy o standardowej zawartości:
#include<windows.h>
#include"Plik.h"
typedef ATOM __declspec(dllexport) RegisterZegarekTyp(HINSTANCE,WNDPROC);
typedef LRESULT CALLBACK __declspec(dllexport) ZegarekProcTyp(HWND, UINT, WPARAM, LPARAM );
WinMain(...){....} ...
W momencie użycia której kolwiek z zaimportowanych funkcji program się wywala. Funkcję mam dobrze popisane, bo jeżeli robię to bez użycia Plik.dll tylko używam PlikDll.cpp to wszytko chodzi dobrze.
Gdzie robię błąd?
Dodam że testując program na innych funkcjach(testowych) zaimportowanych w ten sposób z dll wszystko działa.