Wrap 'windows.h' inside a C++ compatible header file.

This commit is contained in:
Stephen Anthony 2020-09-29 15:56:27 -02:30
parent 55e69273d4
commit afa0fe3190
4 changed files with 36 additions and 12 deletions

View File

@ -18,16 +18,8 @@
#include <cassert>
#pragma warning( disable : 4091 )
#include <shlobj.h>
#ifdef ARRAYSIZE
#undef ARRAYSIZE
#endif
#include <io.h>
#include <stdio.h>
#include <windows.h>
// winnt.h defines ARRAYSIZE, but we want our own one...
#undef ARRAYSIZE
// F_OK, R_OK and W_OK are not defined under MSVC, so we define them here
// For more information on the modes used by MSVC, check:
@ -44,6 +36,7 @@
#define W_OK 2
#endif
#include "Windows.hxx"
#include "FSNodeWINDOWS.hxx"
/**

View File

@ -15,8 +15,7 @@
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
//============================================================================
#include <windows.h>
#include "Windows.hxx"
#include "SerialPortWINDOWS.hxx"
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

View File

@ -18,8 +18,7 @@
#ifndef SERIALPORT_WINDOWS_HXX
#define SERIALPORT_WINDOWS_HXX
#include <windows.h>
#include "Windows.hxx"
#include "SerialPort.hxx"
/**

33
src/windows/Windows.hxx Normal file
View File

@ -0,0 +1,33 @@
//============================================================================
//
// SSSS tt lll lll
// SS SS tt ll ll
// SS tttttt eeee ll ll aaaa
// SSSS tt ee ee ll ll aa
// SS tt eeeeee ll ll aaaaa -- "An Atari 2600 VCS Emulator"
// SS SS tt ee ll ll aa aa
// SSSS ttt eeeee llll llll aaaaa
//
// Copyright (c) 1995-2020 by Bradford W. Mott, Stephen Anthony
// and the Stella Team
//
// See the file "License.txt" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
//============================================================================
#ifndef WINDOWS_LIB_HXX
#define WINDOWS_LIB_HXX
/*
Using window.h directly can cause problems, since it's a C library
that doesn't support namespacing, etc.
Anyone needing 'windows.h' should include this file instead.
*/
#include <windows.h>
#undef MessageBox
#undef ARRAYSIZE
#endif // WINDOWS_LIB_HXX