Una DLL nativa può chiamare una DLL .NET?Una DLL può chiamare una DLL .NET?
risposta
No, è necessario utilizzare C++ gestito
Senza usare COM, è necessario scrivere un C++/CLI involucro. Il tuo codice nativo che include il file di intestazione del tuo wrapper deve essere compilato con/clr (supporto Common Language Runtime).
Solo per curiosità, perché non utilizzare l'interoperabilità COM? Controlla gli strumenti regasm.exe e tlbexp.exe.
Perché non ho familiarità con COM e farò tutto il possibile per evitare di impararlo :) –
COM soffre anche del problema di inferno DLL brutto dovuto alla registrazione globale. È possibile fare COM senza registrazione ma la documentazione è confusa e ci sono errori http://stackoverflow.com/questions/617253/is-anyone-successfully-using-registration-free-com-with-net-components –
Hai bisogno di qualcosa per far funzionare il mondo gestito e il mondo non gestito. Se non si desidera utilizzare COM, è possibile creare classi wrapper in C++/CLI.
Ecco un articolo che può iniziare: .NET to C++ Bridge.
Grazie per l'articolo. È utile –
- 1. È possibile chiamare una DLL C# da una DLL C?
- 2. Chiamare un metodo VB6 da una DLL .NET
- 3. Chiamare una DLL Delphi da un'applicazione C# .NET
- 4. Come chiamare una DLL .NET da un processo Win32?
- 5. Python può chiamare le funzioni Delphi in una DLL?
- 6. Chiamare una funzione DLL da Python
- 7. Chiamare una DLL da un'applet tramite JNI
- 8. Compilare Brotli in una DLL .NET può fare riferimento
- 9. versione di una DLL in .NET
- 10. Riferimento a una DLL da un'altra DLL
- 11. Come eseguire una DLL Core .Net?
- 12. Chiamare C# dll in vbscript
- 13. Come verificare una firma digitale di una DLL in .NET
- 14. Dinamicamente P/Richiamare una DLL
- 15. Identificazione dell'origine di una DLL
- 16. Debug del progetto VB6 che chiama una DLL .Net (C#)
- 17. Quale strumento può decompilare una DLL nel codice sorgente C++?
- 18. Possiamo chiamare .net (2.0) dll dall'applicazione Delphi 5
- 19. Chiamare vb6 dll da C#
- 20. da un metodo C#, come chiamare ed eseguire una DLL, dove il nome della DLL deriva da una variabile String?
- 21. accesso a .net2.0 dll in .net 4.0 dll
- 22. Chiamare una DLL c da C++, C# e ruby
- 23. Riferimento a una DLL instabile
- 24. Come creare una dll come shell32.dll che contiene Icons
- 25. Chiamare DLL C++ da Python
- 26. ridenominazione di una dll di terze parti in .net
- 27. Creare un'applicazione VB6 utilizzando una classe in una DLL, quindi sostituire quella DLL dopo la generazione?
- 28. Consumare webservice da una DLL NET - problema app.config
- 29. È possibile chiamare una DLL gestita da C++ non gestito?
- 30. Chiamare una funzione DLL delphi dal codice C#
Oppure un wrapper scritto in C++ gestito. –
Esattamente. Quello che facciamo è creare un involucro sottile con esportazioni "C" extern standard in C++ gestito, quindi scrivere il codice reale in C#. – ConsultUtah