Visual Studio 2003 → 2005への移行

C#を使うために、徐々に2005に移行しつつあるのですが、
タイピングの方も、2005に移行してみました。

VS 2005起動して、古いプロジェクト読み込んで、
変換ウィザード使って変換してもらって、特に難なく完了。
次に、コンパイルをしてみる。
以前から聞いていたとおり、strcpyとか、Cからの
文字列操作関数を呼び出してると、警告される。
とりあえずは、コンパイルはできるから、置いといた。

で、問題はここから。
問題ファイルを読み込んで、タイピングの画面に移ろうとするも、
ファイルが見つかりません、とエラーが発生。
今まではこんなことはなかったのになぁ、と思いつつ、
幸いなことに、内部的な例外とかじゃなくて、
自分で書いたエラーなので場所はすぐに特定できた。

どうやら、fstreamをopenして、fstream::fail()の
戻り値がtrueで返ってしまっているようだった。
しかし、今までは動いてたのに何故だろう、と思いつつ
いろいろと試行錯誤しているうちに、どっかで間違えたのか、
ストリームのフラグを間違えて出力にしてしまったのか、
ファイルを上書きしてしまった・・・と思ったら、
上書きはされていなくて、文字化けしたファイルが生成されていた。

ひょっとすると、内部的に文字コードが違ってるのかと思い、
プロパティをいろいろと探してみて、まず、
「文字セット」を「設定なし」に変更。
wchar_tを使用しないように変更。
最後に、main関数の頭の部分に、

setlocale(LC_ALL, "Japanese");

を追加。
以上で何とか読み込むことに成功。

しかし、何故こんなことになったのだろうか・・・。
「文字セット」は以前からあったと思うんだがなぁ。

Posted at : 2005-12-31 01:38:17 / Category : none

Comments

まだコメントはありません / No comment.

Send comment


Name


Mail-address (empty is OK. If you want to notify update, please fill mail-address.)


Bot check code (240319 と入力してください / Please input 240319.)