Home Devices

Problems with HP Color Laserjet CP 3505 PCL 6

edited October 2008 in Devices
Windows XP
ReportBuilder 10.06 / 10.09

Hi,

I have an End User solution derived from your IBX example, that works well,
but when printing to a HP Color Laserjet CP 3505 PCL 6 I get an Access
Violation.
The Print Job gets done anyway, but I always get the error.
Do you know about any problem with this printer?

Thank you in advance.
Massimiliano Trezzi.

Comments

  • edited October 2008
    Hi Massimiliano,

    Does this happen with both RB 10.06 and RB 10.09? Are you able to print to
    other printers successfully? Try setting your library path to
    \RBuilder\Source rather than \Lib and see if you can trace into the RB
    source where the problem is occuring.

    --
    Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited October 2008
    Hi Nico,

    this happen with both versions and only with this printer.
    This printer works fine with other softwares.
    I will try to test with sources in my path, but It's not so simple because I
    have a lot of dependencies between my app and reportbuilder.


    Thank you in advance.
    Massimiliano Trezzi.

  • edited October 2008
    Hi Massimiliano,

    This is most likely a memory or resource leak issue. Try running your
    application through a memory manager such as AQTime or FastMM and see if you
    can track down any problem areas in your code.

    --
    Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited October 2008
    Hi Nico,

    I investigated the problem.
    It's an access violation at address 0x00000000.
    I get it with all the reports I try.
    The problem arise when finished to print and only when the printer queue is
    empty.
    It seems that it happens when receiving a notify from windows printing
    system or during some GUI operation.
    I tried to debug it and there's no RB code directly involved, but I get the
    error only with RB so I think there's something wrong before in RB.
    If I build an application that loads a raf file and prints it I don't get
    any error, but from an end user solution I always get It.
    Here is the call stack when I get the error:

    :75c8b09e kernel32.RaiseException + 0x58
    :20006c24 NotifyNonDelphiException + $1C
    :7739100b ntdll.RtlRaiseStatus + 0x86
    :77390e97 ntdll.KiUserExceptionDispatcher + 0xf
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :20040e4e StdWndProc + $16
    :201375be InitWndProc + $102
    :772b1a10 USER32.GetMessageW + 0x6e
    :772b3123 ; C:\windows\system32\USER32.dll
    :772b1c03 ; C:\windows\system32\USER32.dll
    :772a8562 ; C:\windows\system32\USER32.dll
    :77390e6e ntdll.KiUserCallbackDispatcher + 0x2e
    :772a848b ; C:\windows\system32\USER32.dll
    :7729d7f9 USER32.CreateWindowExA + 0x33
    :200e2cb8 ; C:\windows\system32\vcl100.bpl
    :2013f501 TWinControl.CreateWindowHandle + $35
    :2013f423 TWinControl.CreateWnd + $127

    Please help me.
    Thank you in advance,
    Massimiliano Trezzi.

  • edited October 2008
    Hi Massimiliano,

    This is not a known issue with RB 10.09.

    Have you tried running your application through a memory manager? As I
    mentioned before, a memory or resource leak is most likely the issue.

    --
    Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited October 2008
    Hi Nico,
    Another "evidence":
    we installed an older driver with less features and it works.
    But our customer want to use the newer one.

    I will try with the memory manager in a few days, but please if you can take
    a look to this problem: it seems a casual problem that with this driver
    become systematic.

    Hi,
    Massimiliano Trezzi


  • edited October 2008
    Hi Massimiliano,

    Is there a certain component on this report that is causing the error? Do
    all your reports show this error when printing with this driver? Try to
    isolate the type of report that is causing the problem.

    I must further insist that you run your application through a memory
    manager. Set your library path to \RBuilder\Source\.. and see if you can
    pick up a memory or resource leak in the RB source as well.

    --
    Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited October 2008
    Hi Nico,

    When I will have some time to spend for this test I wil make it, but I think
    you should make some test on this driver.
    We have hundreds of customers that use our reports and we cannot debug every
    printer driver they use.
    I think that ReportBuilder should work with every good driver and Digital
    Metaphors should, at least, reports which driver is not good for
    ReportBuilder.
    All these reports work with every other driver I tried, and all other
    products (Notepad, Word....) work with this driver so I think that you
    shoult test it.

    Thank you,
    Massimiliano.

  • edited October 2008

    I downloaded the printer driver from the HP web site and installed to a
    Windows XP machine. I configured the printer to be the default printer for
    the machine.

    I installed RB 10.09 into D2007.

    I compiled and ran the ..\Demos\EndUser\ReportExplorer example and printed
    several reports to the printer.

    No errors or AV's were encountered.

    In a prior message you stated that you can print Archives (.raf) with no
    error. That indicates that ReportBuilder can successfully print to the
    printer. Perhaps there is an issue elsewhere in the application.

    Try some incremental tests to narrow down where the issue occurs. Try
    creating a minimal examle project that causes the issue. We need a
    reproduceable test case.

    RB applications are deployed all over the world on thousands of machines
    using about any printer avaialble. If you have a decent driver, it will
    work. RB uses standard Windows API functions. The Printer Driver is
    responsible for supporting the Windows API.

    In general printer drivers are often very poor quality - they often contain
    bugs, leaks, overflow errors, and do not properly support the Windows API.
    RB has code to work around many common errors in printer drivers. Using
    Notepad and Word is always a good test for the driver, but it is not a
    complete test. I have also seen RB work correctly when Word encountered an
    AV.

    --
    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com

    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
This discussion has been closed.