Author Topic: headers and 64-bit programs  (Read 4403 times)

shankle

  • Member
  • ****
  • Posts: 855
headers and 64-bit programs
« on: September 17, 2012, 09:56:04 PM »
To my way of thinking, there should be a separate set of headers for
64-bit programming. For EX: Mr. Gordons documentation for
WNDCLASS does not show how to code for the WNDCLASSEX api.
Yes there is a sample for WNDCLASS, but at my stage of learning,
when to add the Q in place of the D and how much to add to the
end is still confusing. This also applies to any other API.
Where can I read more on this?


TouEnMasm

  • Member
  • *****
  • Posts: 1295
    • EditMasm
Re: headers and 64-bit programs
« Reply #1 on: September 18, 2012, 02:22:10 AM »
The sdk is the answer,you can translate it with
http://masm32.com/board/index.php?topic=576.msg4665#msg4665
The winuser is abble to answer you.
Fa is a musical note to play with CL

shankle

  • Member
  • ****
  • Posts: 855
Re: headers and 64-bit programs
« Reply #2 on: September 18, 2012, 07:39:37 AM »
Hi ToutEnMasm and thank you for replying.
I tried to download the Luce.yves thingy but ESET SS gave this virus
warning:  a variant of win32/krypt.k.bne trojan.
Most likely a false positive.
Let me know what you find out Please.
Jack

TouEnMasm

  • Member
  • *****
  • Posts: 1295
    • EditMasm
Re: headers and 64-bit programs
« Reply #3 on: September 18, 2012, 03:18:41 PM »

There is no virus in the zip file and not in the forum,change it.
"Microsoft security essential" is free and work very well.
Fa is a musical note to play with CL

wjr

  • Member
  • **
  • Posts: 214
    • WJR's website
Re: headers and 64-bit programs
« Reply #4 on: September 21, 2012, 10:16:01 AM »
Short story, pointers move up to 64-bits. Things do get a bit more complicated with alignment of structures and their members. If using Edgar's header files, you will see 64-bit members with either a type of mainly HANDLE or PTR (some others too, like DWORD_PTR) which switch from 32-bit to 64-bit if you define the symbol WIN64. Without going back to the header files, these will typically be members with names starting with h (ex. hIcon) and lp (ex. lpszClassName).

If you define a structure in a data or constant section (not LOCAL) and get GoASm to create a listing file, you can see how these resolve to DQ and where extra padding has been added for proper alignment.

jj2007

  • Member
  • *****
  • Posts: 10468
  • Assembler is fun ;-)
    • MasmBasic
Re: headers and 64-bit programs
« Reply #5 on: September 21, 2012, 08:06:22 PM »
Short story, pointers move up to 64-bits.

Long story.