Many moons ago (1993), I tried to learn Windows programming in ANSI C by
poking through Microsoft auto-generated code.  Not very productive.  I wound
up taking the Introductory C and Advanced C classes at UC San Diego
Extension for a good foundation in non-Windows ANSI C, then I started simple
with a hand-coded Windows program example for a digital I/O card provided by
National Instruments with its NI-DAQ function library.

This learning path made me very productive, because the DIO example stuck to
the basics of Windows programming in ANSI C, and the comments in the NI code
explained how the event handlers and callback functions worked.  I also
bought Microsoft's original book on Windows C programming to help follow
what was going on (sorry - buried in a box at the moment, so I don't have
the title/author handy).

Eventually, I expanded that simple example to a full-featured GUI-driven
program that controlled the DIO card and a 10-channel analog output card,
both of which fed the digital and analog control ports of a dumb synthesized
I/Q cellular radio intended for an AMPS/Cellular Digital Packet Data (CDPD)
product.  I made the GUI work like the front panel of most modern ham rigs.
I have to say that my non-ham colleagues loved it because it was so easy to
use compared to the mixture of text-only control programs provided by the
makers of the various chips in the radio.  It was a fun project for me, too,
because it was my very first Windows program in C.  Sometimes, I wish I had
not been such a "good employee" by adhering to company policy and not taking
a copy of my code with me when I left in 1996 - because the company folded
its tent and went the way of the Dodo not too long afterward, and all that
work is lost for good.

So, my advice for learning how this stuff works is to take some foundation
classes for whatever language you intend to use, buy a concise book on how
to apply it to Windows programming, and start with some simple examples.

These days, I program professionally in Agilent VEE or LabVIEW (the latter
only if I have to - waaaayyyy too many icons..."Graphic Assembly Language" -
HI!), since most of my work involves instrument control and waiting for
things to happen.  However, though excellent at what they're intended for, I
wouldn't recommend either for a real-time system like a SDR.

73,
Dan  KB5MY

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Robert W McGwier
Sent: Tuesday, April 11, 2006 9:25 AM
To: Bruce K3CMZ
Cc: FlexRadio@flex-radio.biz
Subject: Re: [Flexradio] Another Stupid Question about the Code

Bruce:

A huge portion of the code is stuff that is automatically generated by 
the VS .NET 2003 integrated development environment (IDE).   When 
working in this environment,  near the upper edge of the screen, when you
are in a module, it will list the functions and you can navigate by opening
that combo box and moving around the functions.

functions like

chkMox_CheckChanged, etc. are automatically generated by the IDE along with
the hundreds of lines about this control in the resources files.

We get to enter the 2-10 lines in the middle ;-).

It is daunting, but not impossible, but as always, it is quite difficult
without the tools that generated the code to begin with.

Bob



Bruce K3CMZ wrote:
> Hi
>  While trying to teach myself something about this C Stuff, I was 
> digging into the Code 'console.cs' and 'setup.cs'
>
> I noticed that these files were quite large:
>  setup.cs is 17276 lines of code and 361 pages  console.cs is 18488 
> lines and 399 pages  for a total of over thirty five thousand lines of 
> code!
>
> Question: How do you C Guys find your way around this?
>                     Is there a index? or prehaps a file that list the
>                     fuctions? I can search, but I don't know what
>                     to search for!
>
> AnyHow ;  Hope all of you have a happy Holiday  We are going to do 
> both Easter and Passover here.
>
>  Thanks Much
>     Bruce K3CMZ
>
>
> _______________________________________________
> FlexRadio mailing list
> FlexRadio@flex-radio.biz
> http://mail.flex-radio.biz/mailman/listinfo/flexradio_flex-radio.biz
> Archive Link: 
> http://mail.flex-radio.biz/pipermail/flexradio_flex-radio.biz/
> FlexRadio Homepage: http://www.flex-radio.com
>
>   


--
Robert W. McGwier, Ph.D.
Center for Communications Research
805 Bunn Drive
Princeton, NJ 08540
(609)-924-4600


_______________________________________________
FlexRadio mailing list
FlexRadio@flex-radio.biz
http://mail.flex-radio.biz/mailman/listinfo/flexradio_flex-radio.biz
Archive Link: http://mail.flex-radio.biz/pipermail/flexradio_flex-radio.biz/
FlexRadio Homepage: http://www.flex-radio.com



Reply via email to