[comp.windows.ms] Dialog Structure and File I/O

ramspott@secola.Columbia.NCR.COM (John Ramspott) (01/27/89)

I have two questions for the net. First, how can I access directly the
windows structure or structures for a particular dialog box given the
handle to that box? I need to write a function that can take the handle
to a dialog box, take the information from the fields, and package it up
to be sent across the network to a process on another machine. This routine
must be generic. I must be able to find out three things:
      1) What fields are in the dialog box
      2) What type of fields they are
      3) What the user-entered contents are

Second, I noticed that many of the programs in the Petzold book don't link
under Windows 2.1. They can't find any of the "undocumented" file I/O
like _lseek, _lread, _lwrite, etc. I called Microsoft and they said they
had been removed in the "upgrade" :-). They recommend writing these routines
yourself in assembler. Being a C programmer, I found this disconcerting. Has
anyone out there written these yet? If so, please post or send to me.

bturner@hpcvlx.HP.COM (Bill Turner) (01/31/89)

> I have two questions for the net. First, how can I access directly the
> windows structure or structures for a particular dialog box given the
> handle to that box? ..........
> ..... I must be able to find out three things:
>       1) What fields are in the dialog box
>       2) What type of fields they are
>       3) What the user-entered contents are

Well, since a dialog box is just a parent window with a bunch of children,
you can use EnumChildWindows to get the children of the dialog box (all the
controlls), then query each of the children in turn.  Once you know the
type of field, you can do special work depending on that field (such as,
an EDIT can be quite large, and you might use EM_GETHANDLE to get the contents).

--Bill Turner

usenet@cps3xx.UUCP (Usenet file owner) (02/01/89)

In article <213@secola.Columbia.NCR.COM> cps3xx!eecae!mailrus!uflorida!gatech!hubcap!ncrcae!secola!ramspott ramspott@secola.Columbia.NCR.COM (John Ramspott) writes:
>Second, I noticed that many of the programs in the Petzold book don't link
>under Windows 2.1. They can't find any of the "undocumented" file I/O
>like _lseek, _lread, _lwrite, etc. I called Microsoft and they said they
>had been removed in the "upgrade" :-). They recommend writing these routines

This is puzzling, because I have Windows 2.1 and SDK 2.1, and I have
successfully called _lread (and I think _lseek) in a program I compiled with
the Small memory model.  In fact, I learned about _lread from Petzold's
book, which I highly recommend (like everyone else).

beckman@dev386.UUCP (Zacharias Beckman) (02/07/89)

In article <1678@cps3xx.UUCP>, usenet@cps3xx.UUCP (Usenet file owner) writes:

>Second, I noticed that many of the programs in the Petzold book don't link
>under Windows 2.1. They can't find any of the "undocumented" file I/O
>like _lseek, _lread, _lwrite, etc. I called Microsoft and they said they
>had been removed in the "upgrade" :-). They recommend writing these routines

You will find that in the latest version of the SDK, the functions that
Petzold calls have been renamed -- to uppercase (why? who knows...).  So,
_lseek is now _LSEEK, etc.  If this doesn't work, send me mail; we use them
extensively here.

Zacharias J. Beckman   ...   gatech!mdt!pgthor!dev386!beckman
                       ...   uunet!mcrware!pgthor!dev386!beckman
(319) 354-5116               (319) 351-1993

Blessed are the meek for they shall inhibit the earth.