czy istnieje sposób korzystania z klas C++ wyeksportowanych przez bibliotekę DLL win32 w Delphi dla win32? Czy istnieją inne sposoby archiwizowania podobnych rzeczy (COM, .NET, ...)?Jak korzystać z klas C++ eksportowanych przez bibliotekę DLL w Delphi
Odpowiedz
Nie można zaimportować zajęć. Możesz importować tylko funkcje. Rudy Velthuis has written at length on the topic. Chociaż nie można korzystać bezpośrednio wyeksportowany klasa C++, opisuje kilka technik, aby osiągnąć ten sam efekt:
„spłaszczania” obiektu, tak po stronie wywołującego nie ma żadnego obiektu już tylko wskaźnik, który zostanie przekazany do biblioteki DLL wraz z innymi parametrami dla szeregu funkcji, które otaczają metody obiektu. Pisanie opakowania jest bardzo proste, chociaż może być uciążliwe.
Używaj czystych wirtualnych klas. Kompilatory Windows C++ i Delphi mają zwykle te same układy VMT, więc jeśli klasę C++ można opisać za pomocą listy czystych metod wirtualnych, można utworzyć równoważną deklarację Delphi, wykonać niektóre odlewanie za pomocą wskaźnika obiektu zwróconego przez bibliotekę DLL, i kontynuuj.
Pełne przykłady obu sposobów podane są w artykule.
Nie można używać klas C++ wyeksportowanych z biblioteki DLL, o ile wiem w Delphi; możesz korzystać z funkcji C i możesz importować klasy COM do Delphi.
- 1. Jak korzystać z klas C++ z ctypes?
- 2. Jak skorzystać z tagowania sterty przez bibliotekę DLL?
- 3. C++ Załaduj bibliotekę DLL z podkatalogu?
- 4. Jak wyeksportować klasę C++ jako bibliotekę DLL?
- 5. Używanie biblioteki DLL Delphi w C#
- 6. Jak zabezpieczyć bibliotekę .NET DLL
- 7. Oddzwonienie z dll Delphi do C# app
- 8. Jak utworzyć bibliotekę DLL, która będzie używana w C#
- 9. Jak zatrzymać wywoływanie nazw funkcji eksportowanej przez bibliotekę DLL?
- 10. Jak utworzyć bibliotekę DLL ActiveX w Visual C++
- 11. Jak znaleźć ścieżkę do bibliotek DLL używanych przez bibliotekę available_output?
- 12. Jak zbudować bibliotekę importu (.lib) ORAZ DLL w Visual C++?
- 13. Eksportowanie symbolu globalnego z biblioteki DLL Delphi
- 14. Jak dołączyć bibliotekę DLL SQLite do mojego projektu C++?
- 15. Delphi Jak korzystać z TGridPanel
- 16. Jak zainstalować bibliotekę C++, aby móc z niej korzystać?
- 17. połączeń Delphi DLL z C++ \ CLI z wielu parametrów
- 18. Czy możesz wywołać bibliotekę DLL z biblioteki C#?
- 19. Delphi Dynamic Dll - zmienna globalna
- 20. Zwracanie ciąg z DLL Delphi C# rozmówcy w 64 bit
- 21. Jak debugować plik DLL w Delphi
- 22. Wywołanie funkcji delphi dll z języka C# w tablicy bajtów
- 23. Pakiet .net exe, bibliotekę DLL, środowisko .net i Natywną bibliotekę DLL w jednym egzemplarzu
- 24. Skompiluj bibliotekę DLL z kodem Pythona
- 25. Czy mogę odtworzyć inżynierię własną bibliotekę dll?
- 26. Jak utworzyć DLL w języku C# i wywołać w Delphi XE6
- 27. jak korzystać z ILspy debugowania biblioteki dll?
- 28. Wywołanie biblioteki DLL Delphi z aplikacji C# .NET
- 29. Uwierzytelnianie DLL w C#
- 30. Jak korzystać z darmowej rejestracji Dll COM w kropce netto