Я пытаюсь научиться запускать код C# и C++ вместе с помощью Mono on RedHat. Я обманываю, чтобы узнать, как заставить их взаимодействовать друг с другом, чтобы быть немного более образованным, когда я работаю над более крупным проектом.P/Invoke C# to C++
У меня проблема с тем, что я делаю вызов P/Invoke с C# на мой код на C++ и генерируется исключение. Используя Mono, я могу получить код C++ для вызова кода C# без проблем.
Мой метод C++, который я хочу, чтобы вызов C# был следующим.
extern "C"{
void Foobar(){
printf("Hooray!");
}
}
Мой код C#, который у меня есть, использует следующие строки P/Invoke.
[DllImport ("__Internal", EntryPoint="Foobar")]
static extern void Foobar();
В моей программе C#, я называю
Foobar();
далее вниз в функции. Исключением, которое я улавливаю, является исключение EntryPointNotFound. Я, вероятно, не замечаю ничего глупого.
Я использовал http://www.mono-project.com/Embedding_Mono как инструкции относительно как сделать это.
Любые предложения оценены. Спасибо,
MJ
Выстрел в темноте: вы пробовали 'EntryPoint =" _ Foobar "'? –
Пробовал. Не повезло. –