Вызов управляемого кода из неуправляемого C
Таким образом, примерно через полтора дня после этого я достиг нулевого прогресса.
Мне нужно написать DLL на C, который использует плагин для существующего приложения. DLL должна быть скомпилирована компилятором Visual Studio 2008 со следующими параметрами
cl -DNT40 -DPOMDLL -DCRTAPI1=_cdecl -DCRTAPI2=cdecl -D_WIN32 -DWIN32 -DWIN32_LEA N_AND_MEAN -DWNT -DBYPASS_FLEX -D_INTEL=1 -DIPLIB=none -I. -I"C:\plm\2T-RAC\TcEx press53\include" -I"C:\Program Files (x86)\Microsoft Visual Studio 8\VC\include" -c -nologo -EHsc -W1 -Ox -Oy- -MD C:\mydir\myDll.c
Затем он связан с библиотекой приложений.
Что ему действительно нужно сделать, и что вызывает у меня проблемы, так это то, что в рамках одного из методов ему нужно получать данные с сервера SQL Server 2008 r2.
Из того, что я видел сегодня, вы не сможете сделать это непосредственно в C, поскольку SQL Server прошлого 2005 года был разработан для взаимодействия с языками CLR (C #, C ++, VB.Net).
Было предложено, чтобы я обработал всю связь с базой данных с помощью библиотеки DLL VB.Net, а затем вызвал указанную функцию из библиотеки DLL.
Большая часть того, что я нашел в теме вызова управляемых dll-файлов из неуправляемого кода, говорила о pinvoke или com-обёртках, и в основном с точки зрения c ++.
У меня нулевой опыт работы с COM или любыми другими упомянутыми методами, поэтому, если кто-то может помочь, это будет высоко ценится.