有沒有辦法在Delphi中使用Win32 DLL導出的C++類用於win32?是否有其他方法來實現類似的東西(COM,.NET,...)?如何使用Delphi導出的C++類
6
A
回答
11
您無法導入類。您只能導入功能。 Rudy Velthuis has written at length on the topic.雖然你不能直接使用導出的C++類,他描述了幾個技術來達到同樣的效果:
「拼合」的對象,因此主叫方沒有對象了,只是一個傳遞給DLL的指針以及包含對象方法的一系列函數的其他參數。編寫包裝器非常簡單,雖然它可能很乏味。
使用純虛擬類。 Windows C++編譯器和Delphi通常具有相同的VMT佈局,因此如果C++類可以用一系列純虛擬方法來描述,則可以創建一個等效的Delphi聲明,使用由DLL返回的對象指針進行一些類型轉換,並繼續。
本文給出了兩種方式的完整示例。
4
就我所知在Delphi中,你不能使用從DLL導出的C++類;你可以使用C函數,你可以將COM類導入到Delphi中。
相關問題
- 1. 如何在C#使用Delphi DLL(與PChar類型類型)
- 2. 如何在Delphi中使用非託管導出
- 3. 如何使用GCC導出C++函數?
- 4. Delphi中的C類類#
- 5. 如何導入將[C++]類導入[objective-c]類的[objective-C++]類?
- 6. 在Delphi中使用C++類函數DLL
- 7. Delphi:如何使用TShiftState類型變量?
- 8. 如何使用Delphi
- 9. 從Delphi XE2導出到Xcode
- 10. 在Ansi-C導入Delphi Dll
- 11. 將Pchar Delphi DLL導入C#?
- 12. 使用C#導出到OneNote
- 13. 導出表使用asp.net C#
- 14. 從Dll導出界面。 C#Delphi VB C++等
- 15. 用於Delphi(或C#)的類Maven工具
- 16. 如何使用導出導出資產Usergrids導出工具
- 17. C#使用C++ DLL函數導出抽象類/接口?
- 18. 如何使用導演類
- 19. 從DLL導出C++類
- 20. 從.SO(linux)導出C++類
- 21. C#類,導出到Excel
- 22. 如何導出C#方法?
- 23. 如何使可在Delphi中使用的.NET(C#)庫
- 24. 如何使用從C++中的DLL導出的函數?
- 25. 在C++中使用Delphi DLL
- 26. 如何導出Delphi 2010的代碼格式化程序設置?
- 27. 如何使用C#應用程序中的Delphi代碼?
- 28. 如何使用DELPHI中用C語言編寫的外部DLL
- 29. Delphi如何使用TGridPanel
- 30. 如何使用線程Delphi