teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

少し修正

2020/08/08 00:15

投稿

退会済みユーザー
answer CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  自動という訳ではなく、プリプロセッサでUNICODEを定義すると、GetModuleHandleWが使用されます。ANSI文字列、ワイド文字列(Unicode)のどちらを使用するかという区別でAとWがついています。
4
4
 
5
- VC2019の場合、プロジェクト設定の、構成プロパティ>詳細>文字セットでUnicode文字セットを使用するを選択すると、コンパイルオプションで定義されます。今のVC++は、デフォルト状態ではプロジェクト設定がUnicode使用になっています。
5
+ VC2019の場合、プロジェクト設定の、構成プロパティ>詳細>文字セットでUnicode文字セットを使用するを選択すると、コンパイルオプションでUNICODEが定義されます。今のVC++は、デフォルト状態ではプロジェクト設定がUnicode使用になっています。
6
6
 
7
7
  ANSI版のAPIは他言語(例えば中国語)のファイル名が扱えなかったりするので、多言語対応を意識するのであればUnicodeにした方がよいです。文字を扱わないプログラムなら、どちらでも特に問題無いと思われます。
8
8
 

1

少し修正

2020/08/08 00:15

投稿

退会済みユーザー
answer CHANGED
@@ -1,7 +1,7 @@
1
1
  > GetModuleHandleを使えばどちらか合うほうを自動で選択してくれるので一番いいということでしょうか?
2
2
 
3
- 自動という訳ではなく、プリプロセッサでUNICODEを定義すると、GetModuleHandleWが使用されます。
3
+ 自動という訳ではなく、プリプロセッサでUNICODEを定義すると、GetModuleHandleWが使用されます。ANSI文字列、ワイド文字列(Unicode)のどちらを使用するかという区別でAとWがついています。
4
- ANSI文字列、ワイド文字列(Unicode)のどちを使用するかという区別でAとWがついています。
4
+
5
5
  VC2019の場合、プロジェクト設定の、構成プロパティ>詳細>文字セットでUnicode文字セットを使用するを選択すると、コンパイルオプションで定義されます。今のVC++は、デフォルト状態ではプロジェクト設定がUnicode使用になっています。
6
6
 
7
7
  ANSI版のAPIは他言語(例えば中国語)のファイル名が扱えなかったりするので、多言語対応を意識するのであればUnicodeにした方がよいです。文字を扱わないプログラムなら、どちらでも特に問題無いと思われます。