C言語質問スレ【激初心者】
■ このスレッドは過去ログ倉庫に格納されています
0175デフォルトの名無しさん
2005/10/25(火) 22:41:49私も以前、実行ファイルの絶対パスを知る方法を聞いたとき、設計を見直せといわれました。
では、それを知ることなく外部ファイルのデータを読み込むにはどうすればいいんでしょうか。
例えば、Windows 上で動作するプログラム hoge.exe は、
同じディレクトリにある aaa.txt からデータを読み込み、表示するとします。
このとき、ファイルのオープンを fopen("aaa.txt", "r") などとします。
ところが、例えば Windows 上で hoge.exe を、外部ファイルの D&D で起動したときなど、
カレントディレクトリの位置が環境依存で変更されてしまうことがあります。
(XP の場合、C:\Document and Setting\(ユーザ名)\ になります)
このとき、上記の fopen は、aaa.txt を見つけられず失敗します。
これを防ぐには、実行ファイルの絶対パスを取得し、
実行ファイルのあるディレクトリをカレントディレクトリにする以外の方法が見つかりません。
ご教授よろしくお願いします。
■ このスレッドは過去ログ倉庫に格納されています