• 締切済み

相対パスの指定

FindFirstFile(), remove(), OPENFILENAME などのファイルやフォルダのパスを扱うものについて、例えば 実行ファイルと同じディレクトリに有るdat.datというファイルを「dat.dat」とだけ書いて相対指定したつもりが、実行ファイルと同じディレクトリにdat.datが無かった場合にWindowsフォルダなどの特殊なフォルダや、AUTOEXEC.BATに書いてあるフォルダを使ってdat.datが検索されて適用されたりすることはあるのでしょうか? いろいろな関数や構造体が有りますが、相対パスが指定されたとき、絶対パスを作るために使用されるフォルダパスが、GetCurrentDirectory()以外のものが使われることってあるんでしょうか?

みんなの回答

  • TT414
  • ベストアンサー率18% (72/384)
回答No.3

No.1のTT414ですが、最近使っていないので分かりませんあしからず。

  • kmb01
  • ベストアンサー率45% (63/138)
回答No.2

別のディレクトリを探しにいくのはCreateProcess、LoadLibrary系くらいだと思います。

avnieur
質問者

お礼

ありがとうございます。

  • TT414
  • ベストアンサー率18% (72/384)
回答No.1

ほとんどの関数は、カレントディレクトリのみです。 環境変数のPATH,TEMPなどを使用するのは、ごく1部の関数です。 ヘルプを見るか、テストしてみるしか、区別する方法はないです。

avnieur
質問者

補足

ありがとうございます。 知らずに予想外のフォルダパスを使われ、偶然にもファイル名までマッチして処理対象にされるバグをなくすために、 そのごく1部の関数を全て知っておきたいです。 1つでもご存知のものがございましたら教えてください。