Utermiko Opublikowano 20 Grudnia 2012 Udostępnij Opublikowano 20 Grudnia 2012 Tytuł: DotNetGMCrossover v 1.1 Opis: Wreszcie, po użeraniu się ze składnią C++/CLI mogę przedstawić DLL umożliwiający korzystanie z .NET'owych DLL'i w GM'ie. Może się komuś przyda :) W paczce znajduje się binarka skompilowana pod .NET 4.5. Dałem source, jeśli ktoś zamierza używać jej na starszych wersjach .NET. (aby sam sobie ktoś skompilował na odpowiednią wersję) Download: https://gmclan.org/up8194_3_DotNetGMCrossover_v1_1.html Rozmiar pliku: 52 KB Download na .NET 4.0 https://gmclan.org/up8194_3_DotNetGMCrossoverFramework40.html Rozmiar pliku: 27 KB Autorzy: Programowanie: Utermiko JEŻELI MASZ ZAMIAR KORZYSTAĆ Z TEJ DLL TO UMIEŚĆ MNIE W CREDITS W paczce znajduje się: -folder Source z kodem źródłowym dll oraz przykładowej dll, -skrypty do zaimportowania, -DLL'ka, -przykładowy DLL w .NET, -przykład (gmk), -plik ReadMe : DotNetGMCrossover v1.1 by Utermiko DotNetGMCrossover służy do korzystania z .NET'owych dll w Game Maker. JEŻELI MASZ ZAMIAR UŻYĆ TEGO DLL'a W SWOJEJ GRZE, UMIEŚĆ INFORMACJĘ O AUTORZE Binarki dołączone do paczki, są skompilowane na .NET 4.5 w trybie Release. Zostały dołączone źródła gdybyś chciał(a) skompilować dll na inną wersję .NET Framework. Opis funkcji: dotnet_init() - inicjalizuje dll'a. Opcjonalny argument (ścieżka do dll) dotnet_load_dll(sciezka) - ładuje .NET'ową dll'kę i zwraca jej ID. Musi być podana PEŁNA ścieżka (można użyć working_directory+"\mojdll.dll"). dotnet_create_object(dllID, klasa, ilosc_argumentow (opcjonalne), argumenty...(opcjonalne)) - tworzy nowy obiekt z podanymi parametrami które zostaną przekazane do konstruktora i zwraca jego id. dllID - id załadowanej dll'ki, klasa - klasa do utworzenia (format: PrzestrzenNazw.KlasaDoUtworzenia) dotnet_delete_object(obiektID) - usuwa obiekt o podanym ID. UWAGA: Jest usuwana tylko referencja obiektu. O zwolnieniu obiektu z pamięci decyduje Garbage Collector dotnet_method(obiektID, nazwa_metody, zwracany_typ, ilosc_argumentow(opcjonalne), argumenty...(opcjonalne)) - wywołuje podaną metodę z dll'ki. obiektID - id obiektu, nazwa_metody - nazwa metody do wywołania, zwracany_typ - zwracany typ (ty_string lub ty_real) dotnet_free() - zwalnia dll'a z pamięci. Pisanie dll'a w .NET -obsługiwane typy: System.String (string), System.Double (real) -metoda nie może być statyczna i musi być publiczna UPDATE v 1.1 -dodano możliwość wywołania konstruktora z podanymi parametrami (zapomniałem wcześniej o tym :P) -dodano możliwość usunięcia referencji do obiektu (o zwolnieniu obiektu z pamięci decyduje Garbage Collector) Link do tematu na GMC: http://gmc.yoyogames.com/index.php?showtopic=564528 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
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ę