Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 51269
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 10, 20262026-05-10T16:43:26+00:00 2026-05-10T16:43:26+00:00

I frequently encounter some definitions for Win32API structures (but not limited to it) that

  • 0

I frequently encounter some definitions for Win32API structures (but not limited to it) that have a cbSize member as in the following example.

typedef struct _TEST {     int cbSize;     // other members follow } TEST, *PTEST; 

And then we use it like this:

TEST t = { sizeof(TEST) }; ... 

or

TEST t; t.cbSize = sizeof(TEST); ... 

My initial guess is that this could potentially be used for versioning. A DLL that receives a pointer for a struct like this can check if the cbSize member has the expected value with which the DLL was compiled. Or to check if proper packing is done for the struct. But I would like to here from you.

What is the purpose of the cbSize member in some C++ structures on Win32API?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-10T16:43:27+00:00Added an answer on May 10, 2026 at 4:43 pm

    My initial guess is that this could potentially be used for versioning.

    That’s one reason. I think it’s the more usual one.

    Another is for structures that have variable length data.

    I don’t think that checking for correct packing or bugs in the caller are a particular reasoning behind it, but it would have that effect.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I frequently have some code that should be run either on a schedule or
This is something I encounter frequently, but I don't know the elegant way of
I frequently have svn-based projects that include third-party components such as the TinyMCE (in-browser
The following code adds tasks that perform some processing on files from the blobstore,
[Sorry that English is not my native language.] So, I have a UI and
I frequently encounter a code smell when I use the Enumerable group_by method. Some
During coding I frequently encounter this situation: I have several objects ( ConcreteType1 ,
I frequently deal with UTF-16LE files encoded on windows which have a \r\n carriage
I frequently write throwaway code (in a research environment ) - for example to
A frequent problem I encounter is having to run some script with 50 or

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.