こんにちは。hsp3.1RC1を試したところ、未だに修正されていない致命的な不具合が
残っていましたので報告いたします。また私の何かの勘違いであった場合は
ご指摘いただきたく思います。
#epack命令が正しく動作しないというものなのですが、下にサンプルを用意いたしました。
試していただける方がいらっしゃいましたら、是非動作結果等お知らせいただきたく思います。
;#epack命令が正しく動作しないサンプルです。 ;実験方法は次の手順です。 ;1) このソーススクリプトをHSPスクリプトエディタに貼り付け、デスクトップ等に保存します。 ;2) F5を押して実行し、期待される結果と実際の結果が同じことを確かめ、実行画面を閉じます。 ; 実行時、デスクトップにtest.datが生成されます。これは実験が終るまで消さないでください。 ;3) エディタ上でCtrl+F9を押して、exeファイルを生成します。 ; この時、先ほど生成したtest.datが暗号化され、パックされます。 ;4) 生成されたexeファイルを実行します。 ; ■!■ ここでなぜか期待される結果と実際の結果が異なったものになります。 ■!■ ;5) スクリプトエディタに戻り、#epackをコメントアウトし、 ; #packのコメントアウトを解除してからCrtl+F9でexeファイルを生成します。 ;6) 生成されたexeファイルを実行します。 ; ■!■ 今度は期待される結果と実際の結果が同じになります。 ■!■ ; #epack命令のバグと思われます。 ; これでは#epackを使用してhgimg3用のプログラム等は開発が不可能になります。 ; この実験を終えた後は、お手数ですが生成されたtest.datやexeファイルを消去してください。 #epack "test.dat" ;#pack "test.dat" sdim x,256 exist "test.dat" if strsize<0:{ x="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" bsave "test.dat",x,strlen(x) } sdim x,256 bload "test.dat",x,8,4 mes "期待される結果= EFGHIJKL" mes "実際の結果 = "+x