初めまして。ゴートラと申します。
私は、下記の環境で開発をやっております。
統合開発環境:Microsoft Visual Studio .NET 2003
言語:C++(但し、ソースファイルは.cppでなく.c)
種類:Win32 プロジェクトのコンソール アプリケーション
現在、FindFirstFileを使用し、
指定したフォルダ以下のファイル一覧を作成しようとしているのですが、
Unicodeでしか文字コードが割り当てわれていない文字がフォルダ名に存在すると、
Unicode文字の部分が「?」に変換され、
「ファイル名、ディレクトリ名、またはボリューム ラベルの構文が間違っています。」
というエラーが返ってきてしまいます。
出力結果が?になっていてもかまいませんが、
該当フォルダ以下のファイル名が一つも取得できなくて困っています。
どうぞ、よろしくお願いします。
とりあえず、いた違い。(ここはVB用掲示板)
VC++掲示板があるので、こちらはリンクを貼り、解決して閉じてください。
http://madia.world.coocan.jp/cgi-bin/Vcbbs/wwwlng.cgi
ちなみに、回答ですが、デフォルトの設定で FindFirstFile 関数は
Unicodeに対応していません。
文字セットをUnicode文字セットにして使うか、明にFindFirstFileWを使ってください。
(文字セットを変更する場合、TCHAR型や_Tマクロ等を使ってください。)
Blueさん
回答ありがとうございます。
本件、一旦解決とし、
VC++掲示板にて再度書き込みます。
つうか、無視しないで
>こちらはリンクを貼り
をやってもらいたいですね。
http://madia.world.coocan.jp/cgi-bin/Vcbbs/wwwlng.cgi?print+200609/06090021.txt
ツイート | ![]() |