The MASM Forum Archive 2004 to 2012

Project Support Forums => MASM32 => WINDOWS.INC Project => Topic started by: kero on November 08, 2008, 12:13:41 AM

Title: some errs in windows.inc
Post by: kero on November 08, 2008, 12:13:41 AM
[forgotten structures]
WINDOWINFO for GetWindowInfo
GUITHREADINFO  for  GetGUIThreadInfo
MENUBARINFO  for  GetMenuBarInfo
TITLEBARINFO for GetTitleBarInfo
CURSORINFO for GetCursorInfo
ALTTABINFO for GetAltTabInfo
COMBOBOXINFO for GetComboBoxInfo
SCROLLBARINFO for GetScrollBarInfo
LASTINPUTINFO for GetLastInputInfo
MONITORINFO(EX) for GetMonitorInfo
RID_DEVICE_INFO (=> also RID_DEVICE_INFO_MOUSE, RID_DEVICE_INFO_KEYBOARD, RID_DEVICE_INFO_HID) for GetRawInputDeviceInfo

[constants]
DC_HASDEFID equ 534Bh, not "equ 534h"
Title: Re: some errs in windows.inc
Post by: hutch-- on November 08, 2008, 12:54:59 AM
If they are not there they may be MISSING but they are not there so they are not errors.

What I need to know is if the structure is an SDK defined one and which C/C++ header file it occurs in.
Title: Re: some errs in windows.inc
Post by: kero on November 08, 2008, 02:15:00 AM
>If they are not there they may be MISSING but they are not there so they are not errors.

Also we can say, that B was MISSING from 534Bh :)
Of course, these structures are not errors, so I used the word "forgotten" (instead of "MISSING"), but they are not there, and their absence is err :)

Dear Hutch, I wrote here because I (long ago) like and use masm32.
Title: Re: some errs in windows.inc
Post by: six_L on November 08, 2008, 04:38:44 PM
Quote
ICMP_OPTIONS STRUCT
  Ttl              BYTE      ?
  Tos              BYTE      ?
  Flags            BYTE      ?
  OptionsSize      BYTE      ?
  OptionsData      DWORD      ?
ICMP_OPTIONS ENDS

ICMP_ECHO_REPLY STRUCT
  Address          DWORD      ?
  Status           DWORD      ?
  RoundTripTime    DWORD      ?
  DataSize         WORD      ?
  Reserved         WORD      ?
  DataPointer      DWORD      ?
  Options          DWORD      ?  ;error
  zData            BYTE 250 dup (?)
ICMP_ECHO_REPLY ENDS


typedef struct icmp_echo_reply {
  IPAddr Address;
  ULONG Status;
  ULONG RoundTripTime;
  USHORT DataSize;
  USHORT Reserved;
  PVOID Data;
  struct ip_option_information Options;
} ICMP_ECHO_REPLY,
*PICMP_ECHO_REPLY;

typedef struct ip_option_information {
  UCHAR Ttl;
  UCHAR Tos;
  UCHAR Flags;
  UCHAR OptionsSize;
  PUCHAR OptionsData;
} IP_OPTION_INFORMATION,
*PIP_OPTION_INFORMATION;
Title: Re: some errs in windows.inc
Post by: hutch-- on November 08, 2008, 10:55:15 PM
Read what I say, when I add ANYTHING to the Windows.inc file, I check it first to make sure the info posted is not wrong.

> What I need to know is if the structure is an SDK defined one and which C/C++ header file it occurs in.

I need to know,

1 What OS version it was introduced in.
2. Which C/C++ header file is the equate/structure in.
Title: Re: some errs in windows.inc
Post by: kero on January 18, 2012, 06:47:47 PM
========================================

First of all I want to thank hutch-- for masm32 v.11, of course!

But now - a few comments to windows.inc (v.11), given my list of the first post of this old topic.

Missing again:
WINDOWINFOGetWindowInfo
SCROLLBARINFOGetScrollBarInfo
RID_DEVICE_INFO, GetRawInputDeviceInfo
GUITHREADINFO without GetGUIThreadInfo ...

Not corrected:
DC_HASDEFID equ 534Bh, not "equ 534h"

New (not extended for Vista/Win7):

typedef struct tagNONCLIENTMETRICS {
  UINT    cbSize;
  int     iBorderWidth;
  int     iScrollWidth;
  int     iScrollHeight;
  int     iCaptionWidth;
  int     iCaptionHeight;
  LOGFONT lfCaptionFont;
  int     iSmCaptionWidth;
  int     iSmCaptionHeight;
  LOGFONT lfSmCaptionFont;
  int     iMenuWidth;
  int     iMenuHeight;
  LOGFONT lfMenuFont;
  LOGFONT lfStatusFont;
  LOGFONT lfMessageFont;
#if (WINVER >= 0x0600)
  int     iPaddedBorderWidth;
#endif

} NONCLIENTMETRICS, *PNONCLIENTMETRICS, *LPNONCLIENTMETRICS;
Title: Re: some errs in windows.inc
Post by: hutch-- on January 18, 2012, 10:00:07 PM
Thanks but I needed to know this during the months of BETA testing where I did not get all that much feedback.
Title: Re: some errs in windows.inc
Post by: zero on February 18, 2012, 01:43:39 PM
SecurityAnonymous equ 1
SecurityIdentification equ 2

needs:

SecurityAnonymous equ 0
SecurityIdentification equ 1
SecurityImpersonation equ 2
SecurityDelegation equ 3
Title: Re: some errs in windows.inc
Post by: hutch-- on February 20, 2012, 03:59:16 AM
zero,

Thanks for the error report, this is what was needed to verify it.


typedef  enum _SECURITY_IMPERSONATION_LEVEL
{
  SecurityAnonymous = 0,
  SecurityIdentification = 1,
  SecurityImpersonation = 2,
  SecurityDelegation = 3
} SECURITY_IMPERSONATION_LEVEL,
*PSECURITY_IMPERSONATION_LEVEL;