HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2007
0723
Driphsp3.1RC1の致命的な不具合3解決


Drip

リンク

2007/7/23(Mon) 15:09:38|NO.9680

Dripです。

 こんにちは。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



この記事に返信する


おにたま(管理人)

リンク

2007/7/23(Mon) 16:00:19|NO.9682

HSP3.1RC1についてのご報告ありがとうございます。
この現象は、#epackの不具合と言うよりは、bloadにオフセットを
指定している部分の問題です。
暗号化されたデータは、ファイルの先頭から復号する必要があり、
一部だけを取ってくることができない状態になっています。
一応、bload命令のリファレンスで書かれている仕様ですが、
不自由なのは確かなので、いずれ修正したいと考えています。



Drip

リンク

2007/7/23(Mon) 19:40:09|NO.9685

Dripです。

 おにたまさん、お忙しい中ご返信有難うございます。
今回の#epackで「おかしいな?」と思ったのは、#epackでは上記の通り正しく読み込めませんが、
手動でpackfileに暗号化チェックを入れてパックした場合では、暗号化されているファイルなのに
正しくオフセットの個所から読み込みが行われている、ということです。

なぜ#epackの暗号化では正しく読み込めず、
手動でpackfileを作成時に暗号化チェックを入れた場合では正しく読み込めてしまうのでしょうか?

 やはり不思議です。



Drip

リンク

2007/7/24(Tue) 01:40:20|NO.9695

Dripです。

度々すみません。
今ほど手動packfileの暗号化実験を行ったところ正常に読み込めない事を確認しました。
以前は正しく読み込めていたような気がしてたのですが・・私の勘違いだったようです。
すみません。お騒がせしました(uu;



ONION software Copyright 1997-2021(c) All rights reserved.