• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Visual studio łączenie projektu z własną biblioteką dll

Object Storage Arubacloud
0 głosów
195 wizyt
pytanie zadane 25 stycznia 2023 w C i C++ przez hicodyn Początkujący (420 p.)

Mam bibliotekę z funkcją w MASM x64 i program w Windows forms z gui dla użytkownika. Próbuję wywołać tą funkcję, ale LoadLibrary() zawsze zwraca null. Dodatkowo nie mam pojęcia gdzie znajdują się pliki z rozszerzeniem .dll czy .lib więc może błąd będzie w argumencie wywołania tej funkcji, bo ścieżka jest nie taka. Nie wiem, przeszukałam już wszystko. Bardzo proszę o pomoc

// biblioteka ASM
			typedef int(_fastcall* MyProc1)(int, int);
			HINSTANCE dllHandle = NULL;
			dllHandle = LoadLibrary(L"colorblindASM.dll");
			MyProc1 procedura = (MyProc1)GetProcAddress(dllHandle, "MyProc1");

			int x = 5, y = 7;
			if (dllHandle != NULL) {
				int retVal = procedura(x, y);
				this->label7->Text = retVal.ToString();
			}
			//

 

komentarz 25 stycznia 2023 przez overcq Pasjonat (21,600 p.)

Taka jest kolejność wyszukiwania pliku biblioteki ‘dll’, gdy nie podajesz ścieżki: Standard Search Order for Desktop Applications.

Czyli pewnie colorblindASM.dll nie jest w jednej z tych lokalizacji.

komentarz 25 stycznia 2023 przez j23 Mędrzec (194,920 p.)
edycja 25 stycznia 2023 przez j23

@hicodyn, 

Dodatkowo nie mam pojęcia gdzie znajdują się pliki z rozszerzeniem .dll czy .lib

Plik .lib nie jest Ci potrzebny, jeśli ładujesz bibliotekę funkcją LoadLibrary. A biblioteka .dll znajduje się tam, gdzie sobie ją przekopiujesz, najczęściej jest to katalog z programem.

_fastcall

Jesteś pewny, że _fastcall z MASM jest kompatybilny z tą samą konwencją w VC++/CLI?

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
0 odpowiedzi 385 wizyt
0 głosów
2 odpowiedzi 929 wizyt
0 głosów
1 odpowiedź 850 wizyt

92,516 zapytań

141,340 odpowiedzi

319,306 komentarzy

61,906 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...