インターネットからファイルをダウンロード
E.T 2013/7/2(Tue) 16:57:45|NO.55434
こんにちは。いったんは前回のでできたのですが今度は違う内容です。
前回のようなプログラムで(http://hsp.tv/play/pforum.php?mode=all&num=55260)
でテスト実行(F5キー)のやつで実行するとできます。
しかし作成っていうか.exeをやってもなんか
タイトル:error !#error 38
-->内部エラーが発生しました(38)
と出てしまいます。
もちろんフォルダの.exeと同じ階層にhspinet.asはあります。
どうしたらよいでしょうか?
test 2013/7/2(Tue) 17:24:33|NO.55435
hspinetの本体はasファイルではなくdllファイルですから、exeと同じ階層にはhspinet.dllを置く必要があります。hspinet.dllはエディタと同じ場所にあります。
また、asファイルはコンパイル時に#includeでソースに含まれていますから、こちらは同梱する必要はありません。
test 2013/7/2(Tue) 18:27:01|NO.55437
あと、エラー番号38の意味を自分で調べていれば自己解決できた可能性が高いです。ヘルプでも調べられますので、調べましょう。
流星群 2013/7/2(Tue) 19:50:24|NO.55445
もうtestさんが答えは書いてくださっているので
少しだけ。
F1ヘルプで探しにくい場合は
http://www.geocities.co.jp/Playtown-Yoyo/6130/hsp/hsp-error-number.html
ココなどでまとめられていますので、
ブックマークしておくと良いと思います。
E.T 2013/7/2(Tue) 20:33:02|NO.55448
なるほど。dllをおくとははじめて知りました。
ありがとうございます。
E.T 2013/7/4(Thu) 16:54:51|NO.55484
こんにちは何度もすいません。
いったん解決したのですがあとから不明なことが出てきました。
http://www43.tok2.com/home/endou0605/sohuto/tekisutox.zip
上のファイルをダウンロードしてその途中でネットからファイルをダウンロードします。
しかしインターネットに未接続の場合終了させたいのになんか忘れましたがエラーが出て
そのままスルーしてしまいます。
どうしたらよいでしょうか?
KA 2013/7/4(Thu) 18:18:10|NO.55485
>>ファイルをダウンロードしてその途中でネットからファイルをダウンロードします。
>>インターネットに未接続の場合終了させたいのになんか忘れましたがエラーが出て
>>そのままスルーしてしまいます。
意味不明です。
E.T 2013/7/4(Thu) 18:38:08|NO.55486
分かりにくかったですか?
つまり起動したら
1インターネットに接続されているか確認
×されていなければここで終了
2更新確認ファイルをサーバーからダウンロード
更新があれば処理を実行してストップ
3テキストエディタの軌道
1の次の×と書いたところがうまくできません。
詳しく書くとネットに接続されていない時にダイヤログを表示させたいのに
それが表示されずに2,3と進んでいくということです。
ネットが○のときは正常です。
E.T 2013/7/4(Thu) 18:39:15|NO.55487
>3テキストエディタの軌道
間違えました。
3テキストエディタの起動です。
test 2013/7/4(Thu) 19:54:02|NO.55490
1のところで、ネットに接続していないときはダイアログを表示させるためにどんな処理を書いてみたのでしょうか。
ソースがあれば、どこがおかしいのかのアドバイスがもらえると思います。
E.T 2013/7/4(Thu) 20:04:23|NO.55491
あれ?
ソフト内のZIPに一緒にソース入れなかったっけ?
E.T 2013/7/4(Thu) 20:05:37|NO.55492
onexit *endx
#include "hspinet.as"
onerror *er
//バージョン情報
ver="2"
mes"http://www43.tok2.com/home/endou0605/"
netinit
if stat : dialog "ネットワークに接続ができませんでした。\nネットワークの設定やモデムを再起動してみてください。\nなお、このソフトはネットワークに接続しないと使用できません。":end ;ここが問題点
mes"更新を確認中です…"
neturl "http://nanndemokann.dousetsu.com/ver/"
mes"更新ファイルのダウンロード中…"
netload "ver.txt"
mes"更新ファイルのダウンロード完了"
mes"チェックしています。"
notesel buf
noteload "ver.txt"
if buf ! ver : mes"更新があります。\n今すぐ更新をしてください。":stop
mes"この本体は最新です。"
wait 300
//メインプログラム
*start
onerror *er
title "Text editor"
mes"Text editor を起動中…しばらくお待ちください"
await 10000
mes"起動完了\nここに書かれている内容は英文とは違う可能性があります"
await 2000
cls
//Creating text
sdim buf,65000
buf=""
mesbox buf,636,406,5,0
button "セーブ",*save
button "ロード",*load
stop
*save
dialog "txt",17,"テキストファイル"
if stat=0:stop
fname=refstr
exname=getpath(fname,2)
if exname="":fname+".txt"
notesel buf
notesave fname
stop
*load
dialog "txt",16,"テキストファイル"
if stat=0:stop
fname=refstr
exname=getpath(fname,2)
if exname="":fname+".txt"
notesel buf
noteload refstr
objprm 0,buf
stop
*er
dialog "エラーが発生しました。\nこのバグはファイルの問題又はプログラムの問題の可能性があります。\n今すぐ公式HPをご確認ください。"
stop
*endx
delete "ver.txt"
end
KA 2013/7/4(Thu) 20:51:29|NO.55493
>>上のファイルをダウンロードしてその途中でネットからファイルをダウンロードします。
上のファイルを落とすのかと思ったが、「その途中で〜」で何だか分からなくなった。
>>つまり起動したら
???
>>あれ?ソフト内のZIPに一緒にソース入れなかったっけ?
ああ、「落としたZIP」という意味ですね。
私のようないちゃもんが付いた時は、相手に伝わる文章なのか見直した方が良いですよ。
test 2013/7/4(Thu) 22:44:47|NO.55495
netinitは、インターネットに繋がっていなくても何かしらネットワークがあればOKのようです。
これはインターネットに繋がっていないLANでも端末同士の通信ができるようにするためではないかと思います。
ですから、ファイルを実際にダウンロードしようとしてみてダウンロードに成功したかどうかで判断するといいと思います。
しかしnetload命令はサーバーへのアクセスに失敗すると勝手にダイアログを出すようなので少し不便です。netrequestとnetexecを使うとダイアログが出なくなりますので、これを使うのがいいでしょう。
E.T 2013/7/5(Fri) 07:03:28|NO.55499
ありがとうございます!
何とかやって見ます。