jikkenjo.netjikkenjo.net適当なことを書くか書かないかわからないメモ帳。メニューコンテンツへスキップOpenFileDialog/SaveFileDialogの罠、カレントディレクトリの変更1件のフィードバック知っていたはずなのに、また引っかかってしまったから、戒めを込めてメモ。C#.NETにおけるFileDialogがカレントディレクトリを変更するバグ(?)C#.NETのSystem.Windows.Forms.OpenFileDialogかSaveFileDialogを使用して、その中でディレクトリの移動操作などをすると、プログラム自体のカレントディレクトリが移動することがある。私は明らかにバグではないかと思っているのだが、もしかしたら仕様なのかもしれない。どのような場面で、このような事態が発生するのか例を出してみる。}}「開く」を押した場合のみ、カレントディレクトリは変更される。その場合だけ、StreamReader部分で例外(FileNotFoundException)が発生する。}}少し汚いが、こういう方法も有効だ。}}そもそも、実行ファイルのパスを取得してしまおうという技。constでなくなり、Mainと同じ静的にしなければならない点にだけ注意。本来ならば、「変更される前のカレントディレクトリを保存しておく」方法よりは、こちらの方が応用性はありそうで、こちらを使うべきだろう。未割り当てのローカル変数が使用されました。すれば、カレントディレクトリは移動しない筈です。コメントを残すメールアドレスが公開されることはありません。コメントデータの処理方法の詳細はこちらをご覧ください。WordPress%d人のブロガーが「いいね」をつけました。