В C # с DLLImport необходимо вызывать переменную C ++ и указатели.
Пользовательские типы:
typedef unsigned char UN_Char;
typedef enum { Valid = 0, Invalid = 1, Unknown = -999 } AppResponseCode;
Вызывается в SomeAPI.C
static AppResponseCode SomeFunction(UN_Char ** vUC1PtrPtr,size_t * vSize1Ptr, UN_Char * vUC2Ptr,size_t vSize2, FILE * inputFile, char * vcharPtr)
Теперь мне нужно вызвать функцию C ++ из C #.
Как только яПопытка создать ссылку не удалась с сообщением
Ссылка на '..... \ SomeApi.DLL' не может быть добавлена.Пожалуйста, убедитесь, что файл доступен, и что он является действительной сборкой или компонентом COM
Поэтому я иду другим путем, чтобы импортировать DLL с помощью DLLImport, но здесь у меня нет подписи для вызывающего C ++Функция
[DllImport("SomeAPI.dll", CharSet = CharSet.Unicode)]
public static extern ?AppResponseCode? SomeFunction( ?????emphasized text ) ;
Может ли кто-нибудь помочь мне определить подпись функции?