Export to GitHub

cr-documentor - issue #31

DXCore 10.2 breaks plugin


Posted on Dec 7, 2010 by Grumpy Hippo

The latest release of DX breaks this excellent plug-in.

Any chance of getting an early fix?

Comment #1

Posted on Dec 7, 2010 by Swift Hippo

I agree. Just tried it with:

  • MS Visual Studio 2010 Ultimate
  • DXCore Version: 10.2.3.0
  • CR_Documento 2.5.0

CR_Documentor preview is not getting fired, and an exception is thrown when I click on pause button.

Following is stack trace info, which occurs when I click on pause button:

Message: Unhandled Exception was thrown. Type: DevExpress.CodeRush.Common.DXCoreUnhandledException Source: Target Site:

Call Stack: at CR_Documentor.DocumentorWindow.RefreshPreview() at CR_Documentor.DocumentorWindow.ToolBar_ButtonClick(Object sender, ToolBarButtonClickEventArgs e) at System.Windows.Forms.ToolBar.OnButtonClick(ToolBarButtonClickEventArgs e) at System.Windows.Forms.ToolBar.WmReflectCommand(Message& m) at System.Windows.Forms.ToolBar.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) at System.Windows.Forms.UnsafeNativeMethods.SendMessage(HandleRef hWnd, Int32 msg, IntPtr wParam, IntPtr lParam) at System.Windows.Forms.Control.SendMessage(Int32 msg, IntPtr wparam, IntPtr lparam) at System.Windows.Forms.Control.ReflectMessageInternal(IntPtr hWnd, Message& m) at System.Windows.Forms.Control.WmCommand(Message& m) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ScrollableControl.WndProc(Message& m) at System.Windows.Forms.UserControl.WndProc(Message& m) at DevExpress.CodeRush.Core.WindowPlugin.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) at System.Windows.Forms.UnsafeNativeMethods.CallWindowProc(IntPtr wndProc, IntPtr hWnd, Int32 msg, IntPtr wParam, IntPtr lParam) at System.Windows.Forms.NativeWindow.DefWndProc(Message& m) at System.Windows.Forms.Control.DefWndProc(Message& m) at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ToolBar.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

OS Version: Win32NT, 5.1.2600.196608 VS Version: 10.0, Ultimate DXCore Version: 10.2.3.0 4 installed add-ins: LOADED: TestDriven.Net 3.0 Personal LOADED: TestDriven.Net Reflector LOADED: VSWindowManager PowerToy 2005

Comment #2

Posted on Dec 7, 2010 by Helpful Wombat

Unfortunately I'm on paternity leave right now, so while I will work on this when I can, it probably won't be all too soon.

Comment #3

Posted on Dec 7, 2010 by Swift Hippo

Ok, I found the problem and here is fix:

Two Assemblies references are missing:

DevExpress.DXCore.Parser DevExpress.DXCore.Controls.Utils.v6.3

Just download CR_Documentor code from SVN:

svn checkout http://cr-documentor.googlecode.com/svn/trunk

Load project in VS2010, add above references and recompile.

You may need to exit VS2010 to be able to copy compiled plugin to the PlugIn directory.

Start VS 2010 and it works!

Underlying reason for the problem is that DX split DevExpress.CodeRush.StructuralParser name space to two assemblies.

Portion of it is now in DevExpress.DXCore.Parser assembly.

Comment #4

Posted on Dec 8, 2010 by Grumpy Hippo

Downloaded as suggested however the CR-Documentor project does have these assemblies referenced already.

I recompiled and apart from an XCopy error it compiled OK.

The resultant dll however didn't fix the problem for me.

Comment #5

Posted on Dec 8, 2010 by Swift Hippo

Are you sure? I just checked out code and looked at project source again. Here are references listed in the project:

DevExpress.CodeRush.Common DevExpress.CodeRush.Core DevExpress.CodeRush.PlugInCore DevExpress.CodeRush.StructuralParser DevExpress.CodeRush.VSCore EnvDTE Microsoft.mshtml $(ProgramFiles)\Microsoft.NET\Primary Interop Assemblies\Microsoft.mshtml.dll System System.Data System.Drawing System.Web System.Windows.Forms System.XML

As you can see:

DevExpress.DXCore.Parser and DevExpress.DXCore.Controls.Utils.v6.3 are not referred in the project file: CR_Documentor.csproj.

Adding these two and recompiling, then installing compiled assembly to plugin directory, reloading VS 2010 solved problem for me.

Comment #6

Posted on Dec 8, 2010 by Grumpy Hippo

Darn - I double checked it and then recompiled - now it's working.

Thanks.

Comment #7

Posted on Dec 9, 2010 by Helpful Wombat

(No comment was entered for this change.)

Comment #8

Posted on Dec 9, 2010 by Helpful Wombat

I have it fixed and will post the official release soon, just testing. It appears, unfortunately, that once this fix is in place, future versions of CR_Documentor may require the later version of DXCore to work. I'll see if I can get around that.

Comment #9

Posted on Dec 9, 2010 by Helpful Wombat

Doesn't look like I can fix that. I could probably do something fancy with AppDomain type resolution handling, but since I don't know what the hosting model for plugins is at that level and I don't relish the idea of having to maintain it... I won't. Looks like this fix increases the minimum engine version requirement to 10.2.3.

Comment #10

Posted on Dec 9, 2010 by Helpful Wombat

Fixed with release 2.6.0.0, now posted for download.

The download list has been updated with DXCore versions that each CR_Documentor version supports. Hopefully this will help people choose the right one for them. The latest is, as always, featured on the home page.

Status: Fixed

Labels:
Type-Defect Priority-Critical