public int ShowMessageBox(uint dwCompRole, ref Guid rclsidComp, string pszTitle, string pszText, string pszHelpFile, uint dwHelpContextID, OLEMSGBUTTON msgbtn, OLEMSGDEFBUTTON msgdefbtn, OLEMSGICON msgicon, int fSysAlert, out int pnResult) { pnResult = (int)_instance.Invoke( () => { MockDialog dialog = new MockMessageBox(_instance, pszTitle, pszText); lock (Dialogs) { Dialogs.Push(dialog); } dialog.Run(); lock (Dialogs) { Dialogs.Pop(); } return(dialog.DialogResult); } ); return(VSConstants.S_OK); }