` Printed Icetips Article

Icetips Article



Windows API: Get Clarion Fieldname from a control FEQ
2003-05-05 -- Mark Goldberg
 
Newsgroups: comp.lang.clarion


Charles,

I modified Skip Williams Debuger class which wraps
OutputDebugString.  The enhanced class has methods to show the NAME
of a field based on it's FEQ.  It relies on an undocumented RTL
call.  I've been meaning to write it up for CMAG.

Try using this:
GetFieldName(signed FEQ),*cstring,raw,name('Cla$FIELDNAME')

BTW, If you open an .EXE (built with CW) in a resource editor, you
will find 'DABDump' resources which appear to hold window/report
structures complete with the Names of the fields in them.

--
www.Tradesmens.com
Mark Goldberg


"Charles Edmonds"  wrote in message
news:3eb61a07@news.softvelocity.com...
> "QuantumX admin"  wrote in message
> news:3eb60e14@news.softvelocity.com...
> > Ahh, sorry, misinterpereted the question. I saw label and
thought variable
> > :(. Unfortunately the label is only an equate, so once it is
actually
> > processed at compile time it is replaced totally by the FEQ. I'd
guess the
> > only way to rip out all labels in the manner you want would be
to write a
> > template to loop through them all and build your queue. It
probably means
> > changing your generic code around to accept a queue built on
each
> procedure
> > instead of hooking into the open window. Don't know if that will
destroy
> > your intended use ?
>
> Hi Tony,
>
> Thanks for the reply.  I had continued to read up on this while
waiting for
> someone to respond and the way that it came across to me was just
as you
> stated.  The FEQ labels appear to only be available at compile
time.
>
> What I was wanting to do was to place a reference to the FEQ label
alongside
> the FEQ number in my queue just a reference to a programmer who
was looking
> at the output in the SysInternals DebugView (this is for a
template I'm
> writing).  As it is I can display the FEQ number and the contents
of the
> control, but I figured it would be easier to follow for the
programmer if
> the FEQ label was there.
>
> The code in the template actually builds a list of the FEQ data
during the
> class INIT method, so I don't think it would be a problem to build
the data
> into the queue at that time.  Also each procedure has its own
queue, so that
> should be OK.
>
> If you have some code snips that you think would work in my
template I'd be
> interested in trying it.
>
> Thanks for the input and the help!
>
> Charles Edmonds
> cje-ByteMeSpammers-@lansrad.com
>
> LANSRAD - "Intelligent Solutions for Universal Problems"
> www.lansrad.com
>
>
>
>
>
>



Printed April 27, 2024, 11:52 pm
This article has been viewed/printed 35122 times.
Google search has resulted in 115 hits on this article since January 25, 2004.