OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

CreateFile が ERROR_PATH_NOT_FOUND のエラーになる

  • すぐに回答を!
  • 質問No.115790
  • 閲覧数997
  • ありがとう数3
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 71% (83/116)

VC++を使っています。OSは Windows2000 です。
CreateFile で指定するファイル名をフルパスで指定し、EXEを同じ
ディレクトリに置いて実行したところエラーとなり、詳細コードが ERROR_PATH_NOT_FOUND でした。
プログラムは以下のようになっています。

#define AAA "c:winnt\\system32\\AAA.log"

hOpen = CreateFile(
AAA,
GENERIC_READ | GENERIC_WRITE,
FILE_SHARE_READ | FILE_SHARE_WRITE,
NULL,
OPEN_ALWAYS,
FILE_ATTRIBUTE_NORMAL,
NULL);

上記プログラムの AAA.exe を system32下に置いて実行すると、
パスが不正だと怒られてしまいます。。。
AAA.exe を別ディレクトリで実行すると、sysytem32下にちゃんと
ファイルが作成されます。
AAA.exe を CreateProcess する BBB.exe を造って試しましたが、
やはり BBB.exe が system32下にあると駄目でした。
どうやらカレントディレクトリが同じだと駄目みたいです。
「"AAA.log"」とせずにフルパスとしているのは以下の理由のためです。
・ファイルは必ず system32下に作成したい。
・AAA.exe は必ず system32下にある。
しかし、BBB.exe が必ず system32下にあるとは限らないため、
「"AAA.log"」とした場合、BBB.exe を実行したディレクトリに
作成されてしまう。

CreateFile には今回のような制限があるのでしょうか???
#ヘルプを見る限り、書いてないです。。。
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル14

ベストアンサー率 50% (1122/2211)

> #define AAA "c:winnt\\system32\\AAA.log

の c:winnt が c:\\winnt じゃなくちゃいけない、ってんじゃないですか?
お礼コメント
nabezo-

お礼率 71% (83/116)

早速の回答ありがとうございました。
ご指摘の通りです。
私のコーディングミスです。
#恥ずかしい。。。
別ディレクトリから実行した場合、正常に動作していたため、
define は問題ないと思い込んでいました。。。
#でも、何で正常なんだろう???
#ふしぎ、ふしぎ。。。
投稿日時 - 2001-08-08 16:43:57
-PR-
-PR-

その他の回答 (全1件)

  • 回答No.2

#define AAA "c:winnt\\system32\\AAA.log"     ↓ #define AAA "c:\\winnt\\system32\\AAA.log" ではないですか? ...続きを読む
#define AAA "c:winnt\\system32\\AAA.log"
    ↓
#define AAA "c:\\winnt\\system32\\AAA.log"

ではないですか?
お礼コメント
nabezo-

お礼率 71% (83/116)

早速の回答ありがとうございました。
ご指摘の通りです。
私のコーディングミスです。
#恥ずかしい。。。
別ディレクトリから実行した場合、正常に動作していたため、
define は問題ないと思い込んでいました。。。
#でも、何で正常なんだろう???
#ふしぎ、ふしぎ。。。
投稿日時 - 2001-08-08 16:44:56


このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ