〜 基本 〜
システム許容範囲を教えて


HSP2 HSP3
スクリプトファイル最大サイズ 無制限 無制限
AXファイル最大サイズ 無制限 無制限
標準エディタの編集サイズ (Win9X系のみ)約48,000Bytesまで 無制限
ラベルの数 4,096個まで 無制限
変数の数 4,096個まで 無制限
数値型変数やstatに代入される値 -2,147,483,648〜2,147,483,647 -2,147,483,648〜2,147,483,647
実数型変数やrefdvalに代入される値 10-308〜10308(有効桁15桁)
refstrに代入される文字数 4,096Bytesまで 4,096Bytesまで
ラベルや変数の文字数 59Bytesまで 59Bytesまで
パラメータに渡せる文字数 65,535Bytesまで 無制限
変数に保持できる文字数 無制限 無制限
配列変数に保持できる要素数 4次元まで無制限 4次元まで無制限
定義できるプラグイン(DLL)数 2,730ファイルまで 8,192ファイルまで
プラグイン(DLL)の命令数 4,096命令まで 65,535命令まで
モジュールの数 無制限 無制限
モジュールの定義命令数 4,096モジュールまで 無制限
使用できるウィンドウ数 32ウィンドウまで(ID1はフルスクリーン用) 無制限
1ウィンドウのオブジェクト数 64個まで 16,384個まで(1,024個で警告)
表示できるウィンドウサイズ 無制限 無制限
表示できる画像サイズ 無制限 無制限
oncmd命令で定義可能な割込数 無制限
初級者の方
1ウィンドウにオブジェクトの最大数が64個から16,384個へ大幅にアップしました。
ウィンドウにボタンやエディットボックスを敷き詰めていた方には嬉しい改善でしょう。
変数及びラベルの最大数が約4,000個ほどから、なんと無制限に変わりました。
ただ、同じ様な変数は配列に、無駄なラベルはローカルラベルに変える工夫もしましょう。
エディタの編集サイズがWin9X系でも無制限になりました。
スクリプトが長ければスゴイと言うことではありませんので、
似た処理はループやサブルーチン、モジュール機能を覚えて簡潔化するよう努力しましょう。
中級者の方
ウィンドウ・バッファの扱える上限数が32画面分から無制限になりました。
ただ、無駄に分割せず、まとめる分はまとめるといったケースバイケースを見極めましょう。
また、スクリーンID1がフルスクリーン用ではなくなりましたので、
ID1は使えないと言っている人を見かけたらHSP3の仕様を教えてあげましょう。
モジュールに定義できる命令数が約4,000個ほどから無制限となりました。
ローカルでサブルーチン化させていた処理をモジュール化し、再利用性を高めましょう。
命令のパラメータとして渡せる文字列上限が約64KBから無制限となりました。
この制限があったことでモジュール化できなかったものをモジュール化しましょう。
また、上級寄りですが、プラグインにも当てはまることなので、利用の幅が広がることでしょう。
上級者の方
oncmd命令が使えるようになったことで標準機能だけであらゆるWindowsメッセージ取得が可能となりました。
プラグインに頼らずともHSP機能だけでメニュー等のコモンコントロールの使用や、
ループで常に監視させてCPU使用率をあげていた問題も回避できることでしょう。
プラグインに格納しておける命令数が約4,000個から約65,000個にアップしました。
これにより多機能プラグインは更なる多機能化が図れることでしょう。
プラグイン自体の定義可能数も3,000弱から8,000強に強化されました。
つまり、理論上最大で1,100万強から5億3,700万弱の拡張命令が定義でできるよう変わったわけです。
まぁ、普通に考えてもそれだけ大規模なものをHSPで作ることはないでしょうが…。