.NET 4.0 - AccessViolationException и WndProc

У меня есть этот фрагмент кода:

internal class MTool : NativeWindow
{
    private const int WM_LBUTTONDOWN = 0x0201;
    public event TipDeactivateEventHandler Deactivate;

    protected override void WndProc(ref System.Windows.Forms.Message m)
    {           
        if( m.Msg == WM_LBUTTONDOWN )
        {
            if( this.Deactivate != null)
            {
                this.Deactivate();
            }
        }

        base.WndProc(ref m);
    }
}

Когда я запускаю свою программу, я получаю сообщение об ошибке AccessViolationException в строкеbase.WndProc(ref m); и я не знаю почему.

По-видимому, это было перенесено с .NET 2.0 на 4.0, и моя теория состоит в том, что может быть альтернативный метод, используемый сейчас вместо переопределения WndProc. Это случай? Если нет, почему я получаю это исключение?

Ответы на вопрос(3)

Ваш ответ на вопрос