На неуправляемом c++ &амп; в C++связывание
Я создал библиотеку Wrapper C++/CLI для вызова функции DLL C#.
// TradeAPIWrapper.h #pragma once using namespace System; extern "C" __declspec(dllexport) void PrintMesssage(BSTR message); namespace TradeAPIWrapper { public ref class Class1 { // TODO: Add your methods for this class here. }; }
& amp; реализация cpp-файла
// Это основной DLL-файл.
#include "stdafx.h" #include "TradeAPIWrapper.h" void PrintMesssage(BSTR message) { HMODULE lib = LoadLibrary(L"TradeAPI.dll"); //Create the function typedef void(*FNPTR)(BSTR message); FNPTR myfunc = (FNPTR)GetProcAddress(lib, "PrintMesssage"); myfunc(message); }
Он хорошо работает и может вызывать PrintMessage, экспортированный из библиотеки dll C#.
Теперь я хочу добавить ссылку на библиотеку DLL TradeAPIWrapper в собственное приложение C++ и вызвать из него PrintMessage. Но когда я добавляю ссылку на проект TradeAPIWrapper, используя зависимости проекта в собственном проекте c++, он выдает ошибку System namespace not found. Я думаю, что родной проект c++ не идентифицирует dll C++/CLI. Как правильно добавить ссылку на dll C++/CLL в собственный проект C++ и вызвать функцию PrintMessage, выставленную в TradeAPIWrapper?
Что я уже пробовал:
Я пошел, хотя C++/CLI tutorials & не нашел решения для этого.