プロが教えるわが家の防犯対策術!

VC++6.0でWIN32APIを使用したプログラミングを行っているのですが、ビルドさせるとリンク中に8割ぐらいの割合でよく固まってしまいます。ビルドの中止をクリックしてもなんの反応もなく、全く動かなくなるので毎回タスクマネージャでVC++を強制終了させています。なぜそんなことになるのでしょうか?さっぱりわかりません。
どなたか原因を教えてください、おねがいします。

A 回答 (5件)

OSはWindows95/98でしょうか?



VC++がコンパイル・リンクするときには、メモリをかなり使うようで、
メモリ管理が甘い(と、私が思っている)その系統のOSで、実装メモリが
少ないと、結構固まります :-<

開発にがんがん使うのであれば、OS には WindowsNT/2000 を使うことを
お勧めします。私も VC++4.2 の頃ですが、あまりの不安定さに Windows95
から WindowsNT4.0 にかえました。


「どうしても OS を変えることができないのだ」ということであれば、
・実装メモリを増やす
・常駐しているプログラムを減らす
といった手段はありますが、問題を解決できる保証はありません。

この回答への補足

ご回答ありがとうございます。
僕の使っているコンピュータはワークステーションでOSはWindws2000です。メモリは1.3GBあるのですが、やはりハードの相性とかの問題になってくるのでしょうか?

補足日時:2001/05/21 14:48
    • good
    • 0

リビルドしてもダメですか?



 インクリメンタルリンカが作成したステートファイルの内容が、何らかの原因でおかしくなってしまう場合があります。(特にVC++ではよくおきます。)

 これはリビルドすれば直るので、一度試してみてください。

この回答への補足

ご回答ありがとうございます。
リンク中の止まってしまってからはビルドの中止ボタンしか押せないようになっていて、それを押しても全く反応しません。
リビルドをいつすればいいのですか?

いろいろ試してみたところ、ビルドし終わったあとにほんの少しだけコードを修正してまたすぐにビルドしなおすと、ほぼ90%の確率で固まってしまいます。

補足日時:2001/05/21 14:56
    • good
    • 0

win32apiなら、もしかしたら、それらのライブラリが壊れちゃっているかもしれませんね。


VCの修復セットアップをするか、もしくは、サービスパックが5まで出ているので、当ててみてはどうでしょう。

それにしても、メモリ1.3GBはびっくりです。

この回答への補足

どうもです。
研究解析用なのでお金に糸目をつけていないのです。

一応セットアップし直してみたのですが、まったくもって直りません。
毎回タスクマネージャを呼び出すのにも疲れました(><)

補足日時:2001/05/21 15:15
    • good
    • 0

そうか Windows2000 なんですね。

実装メモリも十分だし。

haporun さんが言う通りサービスパックを当てるのは当然として、
あと思いつくところと言えば、もし、常駐タイプのウィルス監視
ソフトを使っているのであれば、開発中は、それを止めておく
とか。

# そろそろ、VC6.0 に乗り換えようかと思っていたのですが、
# ちょっと心配になってきたなあ…

この回答への補足

どうもです。
ちょっと危ないんですけど、ウイルス対策のソフトすら入っていません。

今いろいろとためしているのですが、研究室のほかのパソコン(OSも一緒)ではこういった不具合はまったくありません。今使っているワークステーションがやはり悪いのでしょうか?

ワークステーションは、DELLのもので、スペックは

Pentium(3)Xeon1GHz ×2個(デュアルCPU)
RDRAM(PC800ECC) 256MB×4+128MB×2

といった贅沢な内容です。

補足日時:2001/05/21 16:18
    • good
    • 0

>リビルドをいつすればいいのですか?



ということですが、ビルドを行う際に「ビルド」ではなく「リビルド」を選べばいいだけです。
ビルドと同じメニュー内にあると思いますが。
    • good
    • 0
この回答へのお礼

わかりました。
ありがとうございます。

お礼日時:2001/05/21 18:27

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!