GPPでビルドするとエラーではないが
#warning MSACM.H: Defining _UNICODE because application defined UNICODE
という警告が出る場合があります。この場合、Unicodeを使っているがその宣言をしていないためだと考えます。この場合には
#define _UNICODE //ワイド文字列 (Unicode) 対応
の定義を行えば警告が出ません。是非試してください。プログラム初心者にはわかりにくいですが、プログラム中の文字列の格納方法は
- Ascii文字(8ビットの英数字、昔からある形式)
- マルチバイト文字列 (SJIS) #define _MBCS
- ワイド文字列 (Unicode) 対応 #define _UNICODE
があります。別に自前で全てを8ビット文字列として扱えば良いと思われますが、既存の関数を使いたい場合は、文字列の違いはこの仕組みで吸収されます。ちょっと苦しいですが覚えておくと良いと考えます。