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


HSPTV!掲示板


未解決 解決 停止 削除要請

2009
1206
残酷な淳のテーゼシステムエラー15解決


残酷な淳のテーゼ

リンク

2009/12/6(Sun) 22:34:03|NO.29173

こんにちは。

今、はがきの宛名を印刷するプログラムを書いているのですが、よく分からないところでエラーが出て強制終了されます。

goto *b *top buffer 1;この行 gsel 0 *b flag = 1 chdir "address" dialog "xxx",16,"住所録ファイル" 名前 = getpath(refstr,1) 名前 = getpath(file,8) goto *top
というようなスクリプトで、3行目で毎回システムエラーが出てしまいます。
何故でしょうか。



この記事に返信する


Ve

リンク

2009/12/6(Sun) 23:07:17|NO.29174

chdir の記述が問題ですかね。



モノブロス

リンク

2009/12/7(Mon) 00:04:35|NO.29175

この場合

chdir "address"
となっているので
スクリプトファイルまたは実行ファイルが置かれているフォルダに
「address」というフォルダがない場合エラーになります



ANTARES

リンク

2009/12/7(Mon) 05:09:45|NO.29179

 説明と異なるスクリプトを貼りつけたのでは、まともな回答は得られません。
書き込む前にスクリプトを実行して何が起きるか確認しましょう。

 上記のような状況なので、質問と関係あるかわかりませんが、
無限ループであることを意識していない無限ループのスクリプトが
まともに動くはずがありません。



Ve

リンク

2009/12/7(Mon) 11:14:27|NO.29180

>chdir の記述が問題ですかね。
良く分からん回答をしてしまったようで申し訳ない事です。スルーしてください。
質問内容と関係のないスクリプトが張られて混乱してました。
これからは正しく回答できるように気をつけます。


ANTARESさんの言う通り、無限ループが関係していると思われますが…。

残酷な淳のテーゼさんが思う問題箇所だけを抜き出したソースなんでしょうか?



残酷な淳のテーゼ

リンク

2009/12/7(Mon) 16:13:40|NO.29182

みなさん回答ありがとうございます。

スクリプトを間違えて書いていました。
6行目に「stop」がありませんでした。すいません。

goto *b *top buffer 1;この行 gsel 0 stop;忘れていた *b flag = 1 chdir "address" dialog "xxx",16,"住所録ファイル" 名前 = getpath(refstr,1) 名前 = getpath(file,8) goto *top



SYAM

リンク

2009/12/7(Mon) 17:30:08|NO.29185

どちらにしろ、システムエラーにはなりませんね。
というか、それ以前に、

buffer 1

…って、これ、何をしようとしているのでしょう?
知る限り、buffer命令の第1パラメータしか指定しないような使い方は無いと思ったんですが…。



珠後

リンク

2009/12/7(Mon) 18:06:46|NO.29186

buffer命令で第一パラメータのみ指定する方法もあります。
ただ、それは多くの場合直後にpicload命令など、
ウィンドウ初期化を含むコードが含まれている場合ですが・・・
この場合は何も操作が無いので意味は無さそうですが。



Ve

リンク

2009/12/7(Mon) 18:39:46|NO.29187

…結局解決したんでしょうか?



A.C

リンク

2009/12/7(Mon) 21:54:31|NO.29189

こんにちは。
もしお使いのバージョンが3.2で、
デバッグウインドウを表示させている場合は
表示しないように設定してみてください。

おそらくdialog+デバッグウインドウの組み合わせが問題かと。



ANTARES

リンク

2009/12/8(Tue) 02:18:26|NO.29192

 まだ、buffer 1を実行する前にエラーが出ます。
>名前 = getpath(refstr,1)

file = getpath(refstr,1)
では?

 そうだとすると、私の環境ではエラーは出ません。

A.Cサンの言うようにデバッグウィンドウの問題でしょうか?
私の環境では再現しませんが。

#久々に標準エディタでデバッグウィンドウを表示しようとしたら
#ちょっと迷ってしまいました(^_^;;



モノブロス

リンク

2009/12/8(Tue) 04:31:05|NO.29193

ANTARESさんの言うように
名前 = getpath(refstr,1)
名前 = getpath(file,8)

file = getpath(refstr,1)
file = getpath(file,8)
にしたらエラーが出ませんね
これは変数名に日本語を使っているのが原因という事ですかね



f(モーニング中)

リンク

2009/12/8(Tue) 06:46:00|NO.29194

>これは変数名に日本語を使っているのが原因という事ですかね

元の

getpath(file,8)

一つ目の引数は「文字列」じゃないと駄目なだけだ。

以前のは文字列型に初期化されてない。



Ve

リンク

2009/12/8(Tue) 07:54:33|NO.29195

>というようなスクリプトで、3行目で毎回システムエラーが出てしまいます。

ソースからの抜粋と受け取れる発言があるので、
本来はもっと長いソースで色んな処理が入ってるかな?と思うんですが…。

専門の先生方にお任せします。



f(漫遊中)

リンク

2009/12/9(Wed) 10:35:46|NO.29201

正直言って、何に詰まってるんだかさっぱり分からん。

当事者居るのか?
解決してるのか?
それとも解決してないのか?
その場合解決する気あるのか?
この提示されたスクリプトで、当事者は自分で申告した位置でエラー出てるのか?


多分、提示されたスクリプトでは、意図と違う挙動してそうだぞ。



残酷な淳のテーゼ

リンク

2009/12/10(Thu) 20:09:23|NO.29221

こんな質問に態々答えていただき、本当にありがとうございます。
今日、デバッグウィンドウを非表示にして実行すると、エラーがなくなりました。
お騒がせしました。



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