Home Component Writing

Access violation on designtime (in a BoldDataPipeline) - Delphi 7

edited October 2006 in Component Writing
Hi @ everyone!

My name's Sebastian ( call me "Kringel", if you want ;-), I'm an apprentice
on software development from Germany, and currently I'm working on a new
Pipeline. I've derived it from TppCustomDataPipeline and it connects
BOLD-based databases (via BoldListHandles) with reportBuilder.
I am using Digital Metaphor's default field editor to create new fields on
this pipeline.

Now my problem is that I can't change property "FieldName" of a field on
designtime: When I try to accept changes to FieldName, Delphi stops with an
access violation in module rtl70.bpl.

Tried to debug Delphi itself with another instance of Delphi runnin as host
application to reach call stack, but it is empty and "Debug-Delphi" just
gives the same violation...

Does anyone know this kind of behaviour and/or has any clues?

Thanks in advance and greetings from good ol' Germany,
Sebastian Kranz.

Comments

  • edited October 2006
    Hi Sebastian,

    Design time bugs can be tricky to track down. My first suggestion would be
    to see if you are able to successfully change a field at runtime in Delphi
    code. If this does not give the same AV, you will need to start placing
    messages in your code (either using ShowMessage(), or a debugging
    application such as CodeSite) to actually see which event/routine of yours
    is executing just before the AV occurs and hopefully track down 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 2006
    Hey again and thanks for your information!

    Got my first problem worked out but now i've got a new one :-[

    I've made up my own "pop-up menu on component"-menu to enable access to
    function "create default fields" (my boss wants it). When I now open the
    (default) field editor by double-clicking on my component again I get an
    access violation - "in module dclRBE107" Delphi says.

    Now how to fix this?

  • edited October 2006
    Hi Sebastian,

    Again, try this at runtime and see if you can track down where the AV is
    occuring. Take a look at the CreateDefaultFields routine in the
    TppCustomDataPipeline class and see what could be causing a problem in your
    case. If you are unable to create this at runtime you will need to use the
    same techniques I described in my previous post to trace the code at
    designtime. My first guess would be to check the GetFieldForIndex routine
    that you are required to implement.

    --
    Regards,

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

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
This discussion has been closed.