はじめまして。
現在、VC++ 6.0で作成したアプリケーションを自分のPCで実行したところ、問題なく起
動できたのですが、別のPCで実行してみたところ、以下のような現象が発生します。
①メインのウィンドウが出る前にまず「システムコールに渡されるデータ領域が少なす
ぎます」というメッセージが表示される
②メッセージを「OK」で抜けると次に「ハンドルが無効です」のメッセージが出表示さ
れる
③メッセージを「OK」で抜けるとまた「ハンドルが無効です」が表示され、同様に
「OK」を押して抜けてもまた同じメッセージが表示され、メインウィンドウが表示され
ない
自分のPCと別PCの何かが違う為、発生しているバグ??だとは思うのですが原因が分か
りません。とりあえずOSはwindowsXPです。
このようなメッセージがPC個別に出たり出なかったりする場合、まずどこを疑ったらよ
いでしょうか?
曖昧な質問で恐縮ですが、アドバイスよろしくお願いします。
ActiveXコントロールとか使ってない?
リモートデバッグしてみたら?
ほろーさんありがとうございます。
ActiveXコントロールを使っているかどうかの確認方法はありますか?
初心者ですみません。
んーさんありがとうございます。
すみません、リモートデバッグの方法が分かりません。
「ビルド」下の「デバッガリモート接続」のことでしょうか?
ほろーさん、ActiveXの有効・無効が影響するか自分で調べてみたところ、変化無しでし
た。
VC6だとメニューのプロジェクト→プロジェクトへ追加→
コンポーネント及びコントロールを選択してActiveXコントロールとかを
入れてませんか?っていう意味。
別のPCにはVC6がインストールされてないんじゃないですか?
どんなプログラムを作ったのかわからないので、なんとも言いようがないのですが、
http://support.microsoft.com/default.aspx?scid=kb%3Bja%3B249721
は参考になりますか?
ほろーさん、ありがとうございます。
コンポーネント及びコントロールから確認したところ、Galleryフォルダ下に
Registered ActiveX Controlsというディレクトリがありました。
別のPCにはVC6は入っていません。
この場合、Gallery下からRegistered ActiveX Controlsを削除した方がよいということ
でしょうか??
>>この場合、Gallery下からRegistered ActiveX Controlsを削除した方がよいということ
でしょうか??
削除したらだめですよ~
>>別のPCにはVC6は入っていません。
ActiveXコントロールが登録されてないのかも。
ただ、「システムコールに渡されるデータ領域が少なすぎます」ってエラーは見たこと無
いから違うかもしれません。
とにかくこれだけの情報だとよくわかりませんね。
エラー箇所を絞り込んで発生箇所のコードだして質問されてはどうですか?
ほろーさん、Yukiさん、ありがとうございます。
そうですね・・・ちょっと情報が少なすぎますね。すみません。
現状、実行できるPCと出来ないPCにそれぞれVC6を入れてステップ実行してみてますの
で、詳しいエラー発生箇所が分かり次第、再度ご報告します!!
現状、実行できるPCと出来ないPCにそれぞれVC6を入れてステップ実行してみてますの
で、詳しいエラー発生箇所が分かり次第、再度ご報告します!!
誤送信してしまいました…
>実行できるPCと出来ないPCにそれぞれVC6を入れてステップ実行してみてます
下手にインストールしちゃうと、問題によっては実行できるようになってしまって原因不
明になる可能性も…
環境はなるべくいじらずリモートデバッグされたほうがいいと思いますよ
えーと…さん、ありがとうございます。
確認してみたらNGだったPCの方にもVC6が入っていました・・・すみません。
現状、エラーの発生している箇所を調査した結果、CreateDialogIndirectでエラーにな
っていそうです。OK時は問題ないものの、NG時は例の「システムコールに渡されるデー
タ領域が少なすぎます」というメッセージが出るみたいです。
引数の値を見る限りOK時もNG時もほぼ同じようです。
とりあえず現状報告です。
追記です。
現在デバッグに使用しているPCのスペックは以下の通りです。
○2台共通
Windows XP Professional Service Pack 2
Intel Pentium M processor 1300MHz 512MB
でOKPCは
システムクロック数:595MHz
HD:30GB
でNGPCが
システムクロック数:1.29GHz
HD:40GB
です。
上記の差で、「システムコールに渡されるデータ領域が少なすぎます」というエラーは
発生するものなのでしょうか?
よろしくお願いします。