Подключение кода С++ к С#

286
07 мая 2017, 22:44

У меня есть несколько классов, с разнообразными методами взаимодействия со структурами данных, несколько простых функций. Все написано на языке С++. У меня есть готовый интерфейс на С#, а так же представление как использовать методы моих классов для получения нужного результата. Все происходит в MVS 13 года.

Но вот вопрос. Как соединить C# проект с С++ кодом?

Я знаю. Было уже много постов здесь(и не только здесь) на эту тему, я их читал. Но внятного ответа не получил. Как и результата экспериментов после прочтения.

Я пытался создать CLR DLL Библиотеку классов, подключить ее к C# через using %название_dll%. Сначала у меня не видело пространство имен моей библиотеки, потом после добавления public к каждой структуре и классу все подключилось, но не было видно простых функций, а все остальное выступало лишь в виде структур и при попытки вызова метода через %имя_пространства%.%имя_класса%.%имя метода% или же %имя_класса%.%имя метода% ничего не происходило, писало что такие вещи не были определены. И когда я смотрел обозреватель решений моей библиотеки там действительно ничего не было.

Пытался создать через win32 библиотеку, но при подключении выдавалось что это не COM-решения или что-то в этом духе. Читал потом нужно динамически подключать, но так и не разобрался с этим, полагая что существует метод легче и правильнее в моем случае(полагаю, что неправильно я полагал).

Так же читал что-то про managed c++ и создание простого dll файла, который C# может видеть спокойно. Но что за формат c++ такой я тоже не знаю(возможно CLR как раз).

В общем вопрос таков. Каким способом мне классы и фукнции C++ соединить с C#, что бы я мог использовать методы и функции в обработчиках в проекте C#.

Спасибо.

READ ALSO
Работа с моделью ASP.NET MVC

Работа с моделью ASP.NET MVC

Предположим, есть некоторая модель MyModel, которая содержит поле _count типа int

252
Свернуть окно в трей [WPF]

Свернуть окно в трей [WPF]

Казалось бы банальный вопрос, но гугл показывает лишь решения для WinForm

463
Запуск метода за два дня до установленной даты C#

Запуск метода за два дня до установленной даты C#

Как запускать какой либо метод в определенное время каждый день? Например у меня есть сегодняшняя дата 0605

200
Присвоить переменной значение ячейки

Присвоить переменной значение ячейки

Доброго времени суток) Подскажите как получить значение из таблицы и присвоить его переменной но мне кажется это можно сделать хранимой...

200