• 締切済み

VC++6.0ビルド後の処理で黙り込み

VC++6.0でDLLを作ったのですが、 プロジェクトの設定でビルド後の処理に copy debug\dll.dll c:\usedll\debug\dll.dll のようにしてリビルドたところ ----------------------------------------------- ................. コードを生成中... リンク中... ライブラリ Debug/MfcDll.lib とオブジェクト Debug/MfcDll.exp を作成中 ビルド後の処理 ----------------------------------------------- ここでビルドが固まってしまいます。 ビルドの中止を押しても復帰せず、VC++を閉じようとしてもビルド中はダメとおこられます。 Ctrl+Cでもダメです。 何度やっても再起動しても確実に止まります。 copy じゃなくてdirとかでも止まります。 ビルド後の処理を外せばちゃんとビルドできます。 なにか心当たりのある方いらっしゃいましたらアドバイスお願いいたします。

みんなの回答

回答No.2

ちょっと実験してみたのですが、止まることはありませんでした(Win2000Pro)。 ただ、ビルド後の処理に「dir $(TargetPath)」と書いた場合で、 パス(上位のディレクトリを含む)が空白を含むと 実行エラーになります。 「dir "$(TargetPath)"」と書くと期待通りの挙動でした。

ystk
質問者

お礼

アドバイス有り難うございます。 DOS窓では問題なくコピーできるので 再インストールしかないのでしょうか? とりあえず今は手動でコピーしています。 くやしいなぁ

noname#2009
noname#2009
回答No.1

思いつく限りで ・copy debug\dll.dll の名前が MfcDll.dll ・コピー元コピー先いずれかがエラー等によりロック状態 ・システムに cmd32.exe がない 実際にはここに書いたのとは違い、名前は当然合わせて あると思うので、多分1番目はなし。 コピー不可の場合はメッセージが出るだけで、ビルドが フリーズすることはないはずなので2番目も多分なし。 3番目については、このような状況になったことが無いの で予測がつきません。 というわけで、コマンドライン(「ファイル名を指定して 実行」でも)から同じコマンドは通るんでしょうか。 もし通るのなら、VC入れ直し?ぐらいしか思いつかない です。

ystk
質問者

お礼

アドバイス有り難うございます。 名前はあわせてあります(スミマセン)。 DOS窓では問題なくコピーできるので 再インストールしかないのでしょうか? とりあえず今は手動でコピーしています。 くやしいなぁ

関連するQ&A