Мне интересно, как вызывать метод класса C# из C++ (Native, а не C++ CLI) кода? Нужен простой и изящный способкак вызвать C# из C++
ответ
Включите вашу сборку C# в COM-видимую и используйте COM-интерфейсы. Насколько я знаю, это единственный способ заставить его работать рядом с самим IPC. Проблема возникает из среды .NET, в которой должна выполняться сборка .NET, а C++ работает под собственной средой C++.
Единственный способ связи - это либо механизм IPC (сокеты, ...), либо использовать COM, поскольку процессы должны быть «развязаны».
Вот учебник для решения на основе COM:
Саша Гольдштейн человек, для этого материала:
Есть снова несколько способов сделать это: 1. Обратный P/Invoke (должен начинаться с .NET-делегата, переданного как обратный вызов, поэтому это полезно только в том случае, если «действие» начинается в вашем коде .NET); 2. COM interop (каждый класс .NET также может быть COM-объектом с явными интерфейсами или без него); 3. Классы оболочки C++/CLI.
См http://blogs.microsoft.co.il/blogs/sasha/archive/2008/02/16/net-to-c-bridge.aspx
Смотри также:
http://www.gregcons.com/KateBlog/CallingManagedCodeFromNativeCode.aspx
Вы можете встраивать любой сборки CLR (C#, VB.NET, F #, ...) в программе родной C++ с использованием того, что называется "CLR Hosting ». Это то, как встроенные программы (такие как SQL Server) поддерживают расширения кода .NET. Например. SQL CLR в SQL Server.
заряжаются CLR в нативный процесса с использованием CorBindToRuntimeEx()
для .NET 2.0 и CLRCreateInstance()
в .NET 4.
Подробности можно найти на MSDN, или книга Джеффа Рихтера CLR via C#.
Самый простой способ - использовать C++/CLI. Если вы не можете использовать это в своем коде, напишите обертку dll и вызовите эту dll.
- 1. Как вызвать класс C++ из C#
- 2. Как мне вызвать C++/CLI из C#?
- 3. Как вызвать функцию C++ из C?
- 4. Как вызвать C++ API из C#
- 5. Как вызвать функцию C++ из кода C
- 6. Как вызвать C# из JScript.net?
- 7. Как вызвать OleCreatePropertyFrameIndirect из C#
- 8. Можно вызвать код C++ из C#?
- 9. Вызвать метод из C# в C++ CLI
- 10. Вызвать C++ DLL из приложения C#
- 11. Вызвать системную функцию C++ из C
- 12. Вызвать C++ родную dll из кода C#
- 13. Вызвать C# dll из C++ (MSVC-компилятор)
- 14. Вызвать метод C# из Javascript
- 15. Вызвать функцию JavaScript из C++
- 16. Вызвать C# dll из Python
- 17. Вызвать vb6 dlls из C#
- 18. Вызвать функцию C++ из html
- 19. C# Как вызвать этот Javascript В C#?
- 20. Как вызвать функцию C++ в C++-программе
- 21. Как вызвать функцию C# из Javascript
- 22. Как вызвать файл jar из C#
- 23. Как вызвать этот собственный метод из C#
- 24. Как вызвать метод IronPython 2 из C#
- 25. Как вызвать функцию Objective-c из JavaScript?
- 26. Как вызвать метод из MethodCallExpression в C#
- 27. C# как вызвать функции из таблицы функций?
- 28. Как вызвать функции D из Objective C?
- 29. Как вызвать библиотеки C# из Excel?
- 30. Как вызвать функции Java из C++?
Как круто, как это может быть мысль больно – 2010-11-26 06:36:41
возможный дубликат [Вызов C# код из C++] (http://stackoverflow.com/questions/778590/calling-c-sharp-code-from-c) – cdiggins 2014-04-21 16:21:05