AxImp DLL: количество указанных параметров не соответствует ожидаемому числу - PullRequest
0 голосов
/ 31 марта 2019

Я пытаюсь создать C ++ ActiveX и использовать его в моей консоли C #.

  1. Я создал MFC ActiveX с помощью этого урока: https://www.codeproject.com/Articles/32772/Create-and-Use-a-C-ActiveX-component-within-a-NET

Имя моего ocx projcet - "test4"

Вот моя функция в C ++:

int Ctest4Ctrl::TestMyMethod( int param1 )
{
    return 2000 + param1;
}
  1. Я использовал AxImp для преобразования ocx в управляемые dll: Axtest4Lib.dll и test4Lib.dll

  2. Я импортировал Axtest4Lib.dll & System.Windows.Forms как ссылку на мой проект.

  3. Я использовал этот код для выполнения функции:

32-битное консольное приложение:

[STAThread]
    static void Main(string[] args)
    {
        var ax_ctl = new Axtest4();

        ax_ctl.CreateControl();

        int func_test = ax_ctl.TestMyMethod((int)2);

        Console.WriteLine("output is " + func_test.ToString());

        Console.ReadKey();
    }

Компилируется без ошибок, но во время выполнения я получаю эту ошибку:

Необработанное исключение типа «System.Reflection.TargetParameterCountException» произошло в mscorlib.dll

Дополнительная информация: количество указанных параметров не совпадает ожидаемое число.

Что я делаю не так?

спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...