WilkAss Opublikowano 8 Stycznia 2010 Opublikowano 8 Stycznia 2010 Witam :] Mam pewne pytanko :] Wiem jak napisać normalny dll z jakąś funkcją np: kopiowanie pliku itp. Ale czy jest możliwe i jeśli tak to proszę o przykład jak napisać dll który wykorzystuje bibliotekę graficzną c++ np allegro czy SDL?
PsichiX Opublikowano 8 Stycznia 2010 Opublikowano 8 Stycznia 2010 pisze sie to podobnie jak normalny program z takim wyjatkiem ze musisz funkcje biblioteki graficznej opakowac do funkcji swojego dlla. kurs allegro: http://kursy.ddt.pl/?TutorialId=7
WilkAss Opublikowano 8 Stycznia 2010 Autor Opublikowano 8 Stycznia 2010 Możesz taki mały przykładzik z 2 funkcje? Będę wdzięczny :) Tak dla wzoru e: i czy muszę dodawać allegro.dll do tego dlla czy sam dll?
PsichiX Opublikowano 8 Stycznia 2010 Opublikowano 8 Stycznia 2010 niestety nie uzywam allegro, wiec nie pomoge gotowcem. Ale zasada jest dziecinnie prosta: masz funkcje allegro i Ty wywolujesz je wewnatrz Twoich wlasnych funkcji. no prosciej chyba nie wyjasnie bo nasuwa sie pytanie czy cokolwiek w c++ potrafisz
WilkAss Opublikowano 8 Stycznia 2010 Autor Opublikowano 8 Stycznia 2010 Co nieco się potrafi ;D Dzięki za pomoc :]
WilkAss Opublikowano 9 Stycznia 2010 Autor Opublikowano 9 Stycznia 2010 GML #include <allegro.h> #define funkcja extern "C" __declspec(dllexport) /**************************** Inicjajcja Allegro ****************************/ funkcja double gmAllegro_init( ) { allegro_init(); return 0; } funkcja double gmAllegro_exit( ) { allegro_exit(); return 0; } Pisze to w projekcie allegro DLL ;] Nie ma błędów ale się skompilować nie chce [Linker error] undefined reference to `WinMain@16' Id returned 1 exit status [Build Error] [gmAllegro.exe] Error 1 E: Sorki za double! E2: I co zrobić w takiej sytuacji? GML funkcja double gmAllegro_Wczytaj_BMP( char obraz, char* sciezka ) { BITMAP *obraz = NULL; obraz = load_bmp(sciezka,default_palette); return 0; } In function `double AleGM_Wczytaj_BMP(char, char*)': invalid conversion from `BITMAP*' to `char' może nie char*? Nie wiem ;/
Kofel Opublikowano 9 Stycznia 2010 Opublikowano 9 Stycznia 2010 funkcja double gmAllegro_Wczytaj_BMP( char* sciezka ) { BITMAP *bitmap = NULL; bitmap = load_bmp( sciezka, COS_TUTAJ_MUSI_BYC ); return 0; } No i składuj gdzies te bitmapy o.0
WilkAss Opublikowano 9 Stycznia 2010 Autor Opublikowano 9 Stycznia 2010 to znaczy? Możesz poprawić? E: I czemu się nie kompiluje jak nie ma błędów?
Snake Opublikowano 9 Stycznia 2010 Opublikowano 9 Stycznia 2010 Upewnij się, czy na pewno projekt jest kompilowany do DLLa.
WilkAss Opublikowano 9 Stycznia 2010 Autor Opublikowano 9 Stycznia 2010 jak tworze normalny projekt dll to sie nie da a jak allegro dll tez sie nie da ;/
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się