ab.com コミュニティ

ActiveBasicを通したコミュニケーション
現在時刻 - 2024年4月27日(土) 17:57

全ての表示時間は UTC+09:00 です




新しいトピックを投稿する  トピックへ返信する  [ 5 件の記事 ] 
作成者 メッセージ
投稿記事Posted: 2005年9月16日(金) 23:18 
オフライン

登録日時: 2005年7月19日(火) 19:47
記事: 98
お住まい: 山形県
RAD を使用していて、メニューをクリックしたときのイベントの中に
別のファイルの Function を呼び出すコードを記述し、デバッグ実行させたら
全く関係の無い場所で「アクセス違反がありました」とエラーが出ました。

具体的には、
・別の(イベント)プロシージャの End Sub の部分
・Callback.wbp の [プロジェクト名]_DestroyObjects プロシージャの End Sub の部分
・InStr 関数の End Function の部分
これらの場所でアクセス違反があると表示されましたが、
これらを呼び出すようなコードはありませんでした。
アクセス違反の場所は、呼び出す Function の関数名によって違うかも知れません。

リリース コンパイルして実行させた場合は、 Function を呼び出す部分で
プログラムが終了しました。

環境は、
・AB 4.10
・XP Professional SP2
・Pentium M 1.4GHz
です。

記述したコードに原因があるにしても不可解なので、こちらのフォームへ投稿しました。

_________________
Toshi's Recess Room
http://toshi.my.land.to/


通報する
ページトップ
 記事の件名:
投稿記事Posted: 2005年9月17日(土) 14:28 
実は自分も似たようなの現象で悩んでいたのですが、下記のようにすればちゃんと動きました。ただ、リリースは正常なのでそちらではどうなるか分かりません。
  • 1.(必要であれば)新しい適当なアカウントを作成
    2.いったんログオフ
    3.別のアカウントにログイン
    4.ユーザー切り替えで元のアカウントに再ログイン
要するに、ユーザーIDを0以外にすれば動作します。
ちなみに自分の環境ではGDB(gccのデバッガ)もユーザーIDが0だと動作せず、0以外にすると正常に動作します。


通報する
ページトップ
   
 記事の件名:
投稿記事Posted: 2005年9月17日(土) 22:20 
オフライン

登録日時: 2005年7月19日(火) 19:47
記事: 98
お住まい: 山形県
仰られたとおり、
ログオフし、 Administrator でログオンし直して自分のユーザーへ切り替え、
ID が0で無い状態でデバッグしましたが、まだ同じ現象が出ます。
リリースも同じく、直ぐに終了してしまいました。

xsb007さんの様に解決した例もありますので、環境の問題の可能性もありますね。

ちなみに、Function を Sub に変更しても変わりません。
他のイベント プロシージャでも Sub を呼んでいる所はありますが...
現時点での回避策は、 Function/Sub を呼ばないということになるのでしょうか?

_________________
Toshi's Recess Room
http://toshi.my.land.to/


通報する
ページトップ
 記事の件名:
投稿記事Posted: 2005年9月18日(日) 16:04 
さっき、Toshiさんとまったく同様の現象が起こりました。
以前のプロジェクトを開いても問題は無く、それでふと気がついたのですが、自動変数(プロシージャ内部でdim宣言された変数)のサイズが大きすぎるとなるようです。巨大な配列などはグローバル変数にしてみてください。

ついでに山本さんへ:
Staticをサポートしてくれるとこういう場合など、グローバルにしなくてすむので助かります。


通報する
ページトップ
   
 記事の件名:
投稿記事Posted: 2005年9月18日(日) 19:45 
オフライン

登録日時: 2005年7月19日(火) 19:47
記事: 98
お住まい: 山形県
呼び出した Function の中で宣言されている 65,536 B の Byte 配列を
グローバル変数として宣言し直したら、正常に動作しました。
ありがとうございました。
ローカル変数のサイズが大き過ぎる場合に、正常に実行されなくなるのですね。

_________________
Toshi's Recess Room
http://toshi.my.land.to/


通報する
ページトップ
期間内表示:  ソート  
新しいトピックを投稿する  トピックへ返信する  [ 5 件の記事 ] 

全ての表示時間は UTC+09:00 です


オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[9人]


トピック投稿:  可
返信投稿:  可
記事編集: 不可
記事削除: 不可
ファイル添付: 不可

検索:
ページ移動:  
Powered by phpBB® Forum Software © phpBB Limited
Japanese translation principally by ocean