[CA-Visual Objects] Something wrong with ActiveX

Discussions about GdPicture.NET usage in non managed applications built in vb6, Delphi, vfp, MFC c++ etc...
Post Reply
Posts: 3
Joined: Thu Apr 12, 2012 5:37 pm

[CA-Visual Objects] Something wrong with ActiveX

Post by Jazzda » Tue Apr 24, 2012 6:03 pm


I'm evaluating GdPicture 8.5 (ActiveX). The complete set of features is amazing, congratulations.
However I'm experiment serious issues if I try to use GdViewer in a form:

I use CA-Visual Objects (originally from Computer Associates, and now provided by GrafXSoft).
If I put the GdViewer control directly in a form the program crashes with an exception (from .NET). I can post the full error here if needed.
Then I tried to wrap it using a VB6 UserControl, as I do with some other controls for convenience. The program seems to work, but crashes after closing, meaning that something is not properly released/closed. After further investigation, I found that if I load a GdViewer control in "ActiveX Control Test Container" (from Visual Studio) the container (TSTCON32.EXE in my case) remains in memory until the process is "killed by hand".

So, it seems that some bug (minor, I believe) prevents GdViewer to be used in some Activex containers, not only Access. Is this a known limitation? Is there anything Orpalis can do about it?

Looking forward for a reply,

User avatar
Site Admin
Posts: 5645
Joined: Tue Oct 17, 2006 10:48 pm
Location: France

Re: Something wrong with ActiveX

Post by Loïc » Tue Apr 24, 2012 6:17 pm

Hello Carlos,

Could you provide a copy of the stack trace ?

Kind regards,


Posts: 3
Joined: Thu Apr 12, 2012 5:37 pm

Re: [CA-Visual Objects] Something wrong with ActiveX

Post by Jazzda » Tue Apr 24, 2012 8:10 pm

Thanks for the fast reply :D
Not sure if this is what you want:

.NET error when trying to put the control "GdPicture.GdViewer" in a CA-Visual Objects form (auto-resizing it to the form full-size).

Code: Select all

************** Exception Text **************
System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
   at System.Runtime.InteropServices.ComTypes.IAdviseSink.OnViewChange(Int32 aspect, Int32 index)
   at System.Windows.Forms.Control.ActiveXImpl.ViewChanged()
   at System.Windows.Forms.Control.ActiveXImpl.ViewChangedInternal()
   at System.Windows.Forms.Control.OnLayout(LayoutEventArgs levent)
   at System.Windows.Forms.ScrollableControl.OnLayout(LayoutEventArgs levent)
   at System.Windows.Forms.ContainerControl.OnLayout(LayoutEventArgs e)
   at System.Windows.Forms.Control.PerformLayout(LayoutEventArgs args)
   at System.Windows.Forms.Control.System.Windows.Forms.Layout.IArrangedElement.PerformLayout(IArrangedElement affectedElement, String affectedProperty)
   at System.Windows.Forms.Layout.LayoutTransaction.DoLayout(IArrangedElement elementToLayout, IArrangedElement elementCausingLayout, String property)
   at System.Windows.Forms.Control.OnResize(EventArgs e)
   at System.Windows.Forms.UserControl.OnResize(EventArgs e)
   at System.Windows.Forms.Control.OnSizeChanged(EventArgs e)
   at System.Windows.Forms.Control.UpdateBounds(Int32 x, Int32 y, Int32 width, Int32 height, Int32 clientWidth, Int32 clientHeight)
   at System.Windows.Forms.Control.UpdateBounds()
   at System.Windows.Forms.Control.WmWindowPosChanged(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ContainerControl.WndProc(Message& m)
   at System.Windows.Forms.UserControl.WndProc(Message& m)
   at GdPicture.GdViewer.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ActiveXImpl.System.Windows.Forms.IWindowTarget.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** Loaded Assemblies **************
    Assembly Version:
    Win32 Version: 2.0.50727.5448 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
    Assembly Version:
    Win32 Version: 
    CodeBase: file:///C:/Components/GdPicture.NET%208/Redist/COM%20Interop/GdPicture.NET.DLL
    Assembly Version:
    Win32 Version: 2.0.50727.5446 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/
    Assembly Version:
    Win32 Version: 2.0.50727.5453 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/
    Assembly Version:
    Win32 Version: 2.0.50727.5458 (Win7SP1GDR.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/
    Assembly Version:
    Win32 Version: 8.0.50727.5420 (Win7SP1.050727-5400)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/Microsoft.VisualBasic/
    Assembly Version:
    Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
    CodeBase: file:///C:/Windows/assembly/GAC_MSIL/Accessibility/
The issue is somehow related to the control resizing:
If I try to resize it before showing I get an exception by Visual Objects, like if some non existing method/property was called.
If I try to show it (with an automatic option to full-resizing) I get the .NET exception above.

I hope it helps

Many thanks for looking at it

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest