Привет! Я пытаюсь перезвонить своему управляемому обратному вызову из неуправляемого кода через P / Invoke, я использую VS 2003 и не могу выполнить следующий код (в C #).Тот же код, если я копирую вставить в VS 2005, он компилируется без проблем и выполняется правильно.
public delegate void MyDelegate();
[DllImport("rtxivsys.dll", CallingConvention=CallingConvention.StdCall)]
static internal extern void SampleDelegate(MyDelegate myDelegate);
public class Myclass
{
void callthedelegate()
{
SampleDelegate(this.Target1);//Compilation error here.
}
void Target1()
{
//some code here , i want this to be called by the unmanaged code
}
}
Если я не ставлю круглые скобки для Target1, это дает мне ошибку компиляции, что "Target1 ссылаетсябез круглых скобок "и если я даю круглые скобки, то это говорит, что аргумент не может быть преобразован в MyDelegate.Я не уверен, что заставляет это работать в VS2005.Спасибо за любые предложения.