HSP3 プログラミングの基礎X
前へ 目次へ 次へ 

(1) 実行ファイル 2

 実行ファイル「exefile.exe」を別のフォルダに移動して実行すると、図のようにエラーが表示される。「Errpr 13」は、マニュアルを調べると"画像ファイルがありません"という意味で、すなわち、picload命令で読み込むための画像ファイルが見つからない時に発生するエラーである。
 サンプルで使用したプログラムは、実行したときに画像ファイル"move2.bmp"をpicload命令で読み込むようになっている。実行ファイル「exefile.exe」を別のフォルダに移動したため、その移動先のフォルダに画像ファイル"move2.bmp"がないため、エラーが発生する。画像ファイル"move2.bmp"も実行ファイルと同じフォルダに移動して実行するとエラーは発生しなくなる。



◎ ファイルのパック

 プログラム実行時に読み込む画像ファイルなどのデータファイルがあるとき、そのデータファイルも一緒にしておかなければならない。できれば、実行ファイル一つだけで実行できるようにしたい。
 ファイルのパックとは、実行時に必要なデータファイルを実行ファイルに含めてしまう、すなわち、パックしてしまうことである。

#pack "ファイル名"  通常の形式でファイルをパックする。
#epack "ファイル名"  暗号化してファイルをパックする。


サンプル画像ファイル"move2.bmp"をパックして、実行ファイル「exefile2.exe」を作成する。

;exec4.hsp
#pack "move2.bmp"      ;ファイルのパック
#packopt name "execfile2"    ;実行ファイル名設定
#packopt xsize 500    ;ウィンドウサイズX設定
#packopt ysize 150    ;ウィンドウサイズY設定
    buffer 1
    picload "move2.bmp"    ;画像読み込み
    gsel 0
    title "実行ファイル作成サンプル"
    kaisu = 30
    x1 = 100 : x2 = 400
    y = 100
    dx = (x2 - x1) / kaisu
    gmode 2, 32, 32         ;コピーモード設定
    repeat kaisu
        redraw 0
        color 0, 0, 0
        boxf
        pos x1 + dx * cnt, y
        gcopy 1, 0, 0
        redraw 1
        await 100
    loop
    color 255, 255, 255 : pos 0, 0
    mes "[Esc]キーで終了します。"
    repeat
        stick kk
        if kk = 128 : break
        await 100
    loop
    end

実行実行ファイル「exefile2.exe」が作成される。この実行ファイルを画像ファイル"gazou2.bmp"がないフォルダに移動して実行しても正しく実行される。

 実行ファイル「exefile.exe」と「exefile2.exe」のファイルサイズ(容量)を比較すると、ちょうど画像ファイルのサイズだけ差ができている。



アイコン書換え

 実行ファイルを作成してもアイコンはスープの入ったカップになる。HSPにはアイコンを変更する機能がないので、アイコン書き換えのための別のソフトウェアを用意する必要がある。
 「Vector」などで「アイコン 書き換え」で検索すると必要なソフトウェアを見つけることができる。また、アイコンの作成にもソフトウェアが必要なので、同じように「アイコン 作成」で検索することができる。


前へ 目次へ 次へ 
2007  © Hiroshi Masuda 

 

 

inserted by FC2 system