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


HSPTV!掲示板


未解決 解決 停止 削除要請

2008
0916
AdukenRe:#pack命令がおかしい4未解決


Aduken

リンク

2008/9/16(Tue) 21:38:54|NO.19519

前回#pack命令がおかしい
で質問をしたAdukenです。

度々すみませんが、
http://sky.geocities.jp/ink_sumi/
にて配信しているSimpleWebのファイル名が長いとの事でした。
しかし、長かったファイル名を改善しても
「画像ファイルがありません」と必ず34行目にエラーが発生してしまいます。

すみませんどうしてでしょうか?



この記事に返信する


Kpan

リンク

2008/9/16(Tue) 22:31:43|NO.19521

>「画像ファイルがありません」と必ず34行目にエラーが発生してしまいます。
これが再現されないので、これはスルーしますが、

パックファイル機能にフォルダの概念はありません。

あと、画像ファイルがムダに多すぎるので、1つの画像ファイルにまとめて、
buffer+picloadを一度きりで済ませるようにしてください。
(サイズ節約したければGIF形式


// 実行ファイル自動作成 #epack "allimage.gif" buffer 1 picload "allimage.gif" screen 0 ; 必要なイメージ部品を「gcopy 1〜」で切り出してくる pos 100, 100 gcopy 1, 0, 0, 20, 20



さくら

リンク

2008/9/16(Tue) 23:12:29|NO.19524

ダウンロードして見ました。
デバッグして書き直す気はないので、気がついた点のみ書きます。

まずは、packfileの中身から・・・(ANTARESさんが書かれていたのと同じ)
;
; source generated packfile
;
user32.as *不要
reloadpressed.bmp *長い(拡張子を含めて15byte以内)
packfile *不要
obj *不要
hsptmp *不要
brows.ax *不要


(Brows.hsp)
#include ".\\Runtime\\user32.as" → "user32.as"
buffer 1
picload ".\\Runtime\\Back.bmp" → "Back.bmp"
buffer 2
picload ".\\Runtime\\Forward.bmp" → "Forward.bmp"
buffer 3
picload ".\\Runtime\\Stop.bmp" → "Stop.bmp"

同一フォルダ内に全てあるというより、exeにしてpackfileに画像等を入れる場合は
パス名は指定不可。(packfileの一行のエリアをオーバーしてしまうため)
また、user32.asは、HSPのcommonフォルダから参照されるのでパス名指定は
しなくても良いです。

それから、画像をbufferに一つずつコピーしていますが、画像は横(もしくは縦)に一列に
並べて一つの画像として、bufferにコピー退避しておいて、gcopyで切り出す方が良いです。
こんなに多くのbufferを使う必要はありません。

以上を注意して組み直してみて下さい。#packもうまくいくはずです。
それから、98で内部エラーが発生すると、HPに書かれていましたが、
Windows 98 (+ IE4.0)で動作させるには、OS コンポーネント(DCOM98,atl.dll)の更新が
必要です。ご参考までに。。。

あっ! Kpanさんと内容がかぶった(^^;



ANTARES

リンク

2008/9/17(Wed) 00:58:38|NO.19526


#include "user32.as" #pack "Runtime\\back.bmp" #pack "Runtime\\Forward.bmp" #pack "Runtime\\stop.bmp" #pack "Runtime\\Action.bmp" #pack "Runtime\\Reload.bmp" #pack "Runtime\\HOME.bmp" #pack "Runtime\\Pre.bmp" #pack "Runtime\\BackPressed.bmp" #pack "Runtime\\ReloadPress.bmp" #pack "Runtime\\StopPressed.bmp" #pack "Runtime\\ToolbarBG.bmp" #pack "Runtime\\StatusbarBG.bmp" #pack "start.ax" #ifdef _DEBUG dir="Runtime\\" #else dir="" #endif buffer 1 picload dir+"Back.bmp" buffer 2 picload dir+"Forward.bmp" ;中略 picload dir+"ReloadPress.bmp" ;以下略



ANTARES

リンク

2008/9/17(Wed) 01:12:22|NO.19528

>「画像ファイルがありません」と必ず34行目にエラーが発生してしまいます。
>
>すみませんどうしてでしょうか?
hsptmpの34行目:GetWindowLong hwnd, -16
Runtime\Brows.hspの34行目:GetWindowLong hwnd, -16
Runtime\hsptmpの34行目:buffer 8

 スクリプトも示さずに行番号を書くことに
一体何の意味があると思っているのやら。



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