あなたの質問は、さらにいくつかの質問を提起します。しかし、それはコンソール アプリであるということとは関係なく、どの「アプリ」にも当てはまる可能性があると思います。もしそうなら ...
あなたの問題は、実行時にフォルダーを参照することにあると思います。あなたが思っているフォルダからアプリが実行されていない可能性があります。
したがって、2つのアプローチ:
- 実行時に絶対パスを解決してみてください(私には気分が悪いです)
- Windows を使用して、ファイルの「標準」領域を使用します。
「Environment.SpecialFolder」をグーグルで検索します。後者のバージョンの Windows ユーザーが編集可能なファイルは、'CommonApplicationData' などの特定のフォルダーにのみ配置する必要があります。これはあなたのアプリケーションに合うかもしれませんし、良い共通領域を提供するだけかもしれません。
ユーザーが編集可能なフォルダをプログラム ファイル領域に配置しようとすると、Windows が「意地悪」になる可能性があります。開発環境ではなく、デプロイされた環境について考えてください。
通常、インストーラはこれらの特別なフォルダをサポートしています。