ab.com コミュニティ

ActiveBasicを通したコミュニケーション
現在時刻 - 2024年3月29日(金) 02:19

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




新しいトピックを投稿する  トピックへ返信する  [ 1 件の記事 ] 
作成者 メッセージ
投稿記事Posted: 2005年8月30日(火) 20:53 
オフライン

登録日時: 2005年5月31日(火) 13:31
記事: 205
お住まい: 大阪市
ABVer4.04.00でバグを発見しました。(β版では直っているかは分かりませんが)

まず1つ目に、Win32プログラミング講座にもあるOPENFILENAMEでABのコンパイラが例外処理(*1)を出しデバッグ側ではアクセス違反となります。
(例)
コード:
    Dim ofn As OPENFILENAME
    Dim buffer[MAX_PATH-1] As Byte

    'ファイル名を取得
    ofn.lStructSize=76
    ofn.hwndOwner=hMainWnd
    ofn.lpstrFilter=Ex"ファイル\0*\0\0"
    ofn.nFilterIndex=1
    ofn.nMaxFile=MAX_PATH
    ofn.lpstrFile=buffer
    GetOpenFileName(ofn)
で説明すると、GetOpenFileName(ofn)の部分でエラーが出ました。(一行づつ「debug」を入れて確認して判明しました。)
ちなみに、デバッグコンパイルでは上のようになりますが、リリースコンパイルをした方のプログラムでは、正常に動作します。

2つ目に、構造体を宣言する「Type」で以下のように関数の前に全角のスペースがあると、ABが動作を停止します。

(例)
コード:
Type SHQUERYRBINFO
  cdSize As Long
  i64Size     As Int64
  i64NumItems As Int64
End Type
SHQUERYRBINFO.の「.」を入れた途端、補完機能が働き、表示させようとがんばっていますが、無限ループしたときみたいにCPUを食います。
もちろん、コンパイルをするとエラーを出しますが・・・
まぁ、この原因はユーザ側なので、すべてがABのせいではありませんが…

それと、さっき発見したのですが、AB4.1βの名残?なのか、「#Strict」を入力してもエラーを出さす、コンパイルできます。もちろん、コンパイラには「[警告]」等は表示されません。
(*1)
例外処理
code:6BA


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

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


オンラインデータ

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


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

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