Вызов функции c ++ в структуре с C # - PullRequest
1 голос
/ 18 января 2012

У меня есть c ++ dll.Я должен использовать эту DLL в коде C #.в этой DLL:

struct UserRecord
{
  int               login;
  //some properties here
}
struct CServerInterface
{
  int         __stdcall ClientsAddUser(UserRecord *inf);
  //some other functions here
}

Как я могу вызвать функцию в структуре?Я пытаюсь это:

[DllImport("WebRegistration.dll")]
public extern static int ClientsAddUser(ref UserRecord inf);

public struct UserRecord
{
//properties here
}

static void Main(string[] args)
{
  UserRecord user = new UserRecord();
  ClientsAddUser(ref user);
}

выдает исключение: «Невозможно найти точку входа с именем« ClientsAddUser »в DLL».

Я предполагаю, что если эта функция не была в структуре,не будет выбрасывать исключение.

1 Ответ

0 голосов
/ 18 января 2012

Я новичок, но попробуй это; Сделайте CServerInterface и UserRecord «открытым классом». Пример;

public class CServerInterface() {int __stdcall ClientsAddUser(UserRecord *inf);}
...