DllImport может использоваться только для импорта функций C, а не методов класса C++ (даже если они являются статическими).
Если это объект C++ com, если вы зарегистрируете его с помощью regsvr32, вы можете добавить ссылку на dll на вкладку ссылок на визуальную студию com, и обычно визуальная студия создает dll (я думаю, что это называется оболочкой, вызываемой вызовом), которую вы можете see создается с именемoflibrary.interop.dll. Таким образом, MyExecRefsDll.dll, если был комком, станет MyExexRefs.Interop.dll. Но когда вы добавляете эталонную визуальную студию, вы автоматически делаете это автоматически в управляемом коде. Если вы создаете dll C++ в качестве объекта com, используя шаблон atl в C++, проще получить доступ из dotnet (Iam, ссылающийся на неуправляемый код C++ из dll, который ссылается на другой файл dll.) Нет кода, скопированного со второй dll. Я просто ссылаюсь на tlb , Пб файл DLL и Visual Studio делает все остальное
Взгляните на этом уроке это делает процесс ясно, как хрустальный шар:. http://www.codeproject.com/Articles/505791/A-Beginner-Tutorial-for-Writing-Simple-COM-ATL-DLL?q=creating+an+atl+dll+c%2b%2b
Просто помните, чтобы найти TLB и Лив (обычно в папке, где создается другая dll после компиляции.) и ссылайтесь на них, щелкнув правой кнопкой мыши в проводнике решений и добавьте-> существующий элемент для второй dll, на который ссылается главная dll. dll (всегда коп y новые версии их в папку проектов каждый раз, когда вы обновляете код во вторую dll).
Не уверен, что вы подразумеваете под 'show data' - вы пробовали' Console.WriteLine (msg) '* после * ваш вызов' Process_Read (..) '? –