Author Topic: Headers  (Read 2164 times)

Yuri

  • Member
  • **
  • Posts: 175
Headers
« on: December 29, 2012, 06:45:03 PM »
Hi Edgar,
I seem to have found one mistake in winerror.h (line 2621).
Code: [Select]
#IFNDEF WIN64
#define NOERROR             0
#define E_UNEXPECTED                     0x8000FFFF
#define E_NOTIMPL                        0x80004001
#define E_OUTOFMEMORY                    0x8007000E
#define E_INVALIDARG                     0x80070057
etc.
#else
#define E_NOTIMPL                        0x80000001
#define E_OUTOFMEMORY                    0x80000002
#define E_INVALIDARG                     0x80000003
etc.
#endif //WIN32
I've noticed that the first set of error codes is returned by both x86 and x64 COM objects. It looks like in the original MS headers "_WIN32" doesn't mean "not _WIN64", since they are both defined, for example, when you build a 64-bit C++ program in Visual Studio.

Original WinError.h.
Code: [Select]
#if defined(_WIN32) && !defined(_MAC)
//
// MessageId: E_NOTIMPL
//
// MessageText:
//
// Not implemented
//
#define E_NOTIMPL                        _HRESULT_TYPEDEF_(0x80004001L)

Donkey

  • Moderator
  • Member
  • *****
  • Posts: 195
  • ASS-embler
    • Donkey's Stable
Re: Headers
« Reply #1 on: December 30, 2012, 12:10:06 AM »
Thanks Yuri,

I'll correct the error, probably have an upload next weekend with several small fixes.
"Ahhh, what an awful dream. Ones and zeroes everywhere...[shudder] and I thought I saw a two." -- Bender
"It was just a dream, Bender. There's no such thing as two". -- Fry
-- Futurama

Donkey's Stable