|
|
|
2021/11/8(Mon) 12:22:55|NO.94341
このスクリプトで、実行すると、アップデートしないのに、アップデートしてしまいます。
#packopt version "ver.txt"
#packopt manifest "admin.manifest"
#include "kernel32.as"
title "58lala Setup"
color 0,0,200
boxf
font "MS UI Gothic",80
color 255,255,255
// 実行ファイルの二重起動防止 (by Kpan)
// http://lhsp.s206.xrea.com/hsp_system.html#5
#define ERROR_ALREADY_EXISTS $B7
; 第3パラに適当なユニーク文字列を指定する
CreateMutex 0, 0, "58lala Setup"
; エラーコードを確認
GetLastError
if stat = ERROR_ALREADY_EXISTS {
dialog "すでに起動しています。起動していないときは、再起動してください。"
end
}
#include "hspinets.as"
//#include "hsp3utf.as"
#include "zipfile.as"
netinit
version="https://nennneko5787.web.fc2.com/58lala/"
neturl version
netdlname "status.txt"
netload "ver.html"
notesel txt
noteload "status.txt"
a=instr(txt,0,"{Version:0.9}")
if a!=0:goto *apudegaarudeyo
onerror goto *error
mes "58lala Setup"
font "MS UI Gothic",20
mes {"ここでは、58lalaのセットアップが行えます。
次へ進むには、次へボタンを押してください。"}
button "次へ",*setup2
stop
*setup2
cls
color 0,0,200
boxf
color 255,255,255
chdir "C:\\Program Files (x86)\\"
font "MS UI Gothic",40
mes "どのエディションをインストールしますか?"
font "MS UI Gothic",20
mes "58lala HomeEdition",1:button "選択",*homee
pos 0,60
mes "58lala Professonal",1:button "選択",*proe
pos 0,80
mes "58lala Education",1:button "選択",*edue
stop
*error
mes {"エラーが発生しました。
下のボタンを押してメールを送信してください。"}
button "メール",*mail
stop
*mail
exec "info_5787@tensi.org",16
end
*homee
et=1
goto *setup3
*proe
et=2
goto *setup3
*edue
et=3
goto *setup3
*setup3
cls
color 0,0,200
boxf
color 255,255,255
font "MS UI Gothic",30
mes "まだできてません!!次のアプデまでお持ちください!!"
//txt="てすと"
//notesel txt
//notesave "test.txt"
stop
*apudegaarudeyo
dialog "アプデがあるでよ\nダウンロードします。"
goto *apude
*apude
neturl "https://github.com/Nennneko5787/58lala_SetupFiles/archive/refs/heads/"
netdlname "58lala_setup.zip"
netload "/main.zip"
s1=dir_cur
ZipExtract "58lala_setup.zip",s1
if stat : dialog "アプデに失敗しました":end
dialog "アプデに成功しました。終了します。"
delete "58lala_setup.zip"
end
| |
|
2021/11/8(Mon) 13:32:47|NO.94342
a=instr(txt,0,"{Version:0.9}")
if a!=0:goto *apudegaarudeyo
a!=0となっていますが、a!=-1では?
|
|
2021/11/8(Mon) 13:46:06|NO.94343
>>94342
-1にしても「アプデがあるでよ」
|
|
2021/11/8(Mon) 17:38:24|NO.94345
スクリプトにあるURLを確認しましたが、すべて404 NotFound(サイトが存在しない)となっています。
これを確認した上で再度実行してみてはどうでしょうか?
|
|
2021/11/9(Tue) 00:22:14|NO.94346
instrのヘルプを読んでみましょう
>>p1で指定した文字列型変数の中に、"string"で指定した文字列があるかどうか調べて、インデックスを返します。
記載されている通り、instrは
文字列がある場合にインデックスが返ってくるもので、
文字列があれば0、なければ-1になるものではないです。
上記を踏まえた上でダウンロードした「ver.html」を見るか
instrの後に「dialog a」をいれるかなどしてみて
指定した文字列のインデックスを確認しましょう
おそらく「124」となるはず。
続いて「if a!=0:」ですが、
先ほど確認した通りインデックス(つまり変数aの数値)は
0でもなければ-1でも無い為「goto *apudegaarudeyo」が実行されている
ということですね。
|
|
2021/11/9(Tue) 00:28:33|NO.94347
忘れてました、追記です
>>94345
についてですが、netloadのファイル名まで入れれば普通に表示されたので
URLの指定に問題はないと思います。
少なくともfc2側の方は。gitの方は見る必要無さげだったので確認してません。
|
|
2021/11/9(Tue) 21:34:00|NO.94348
netloadの部分を見逃していました。全く異なる回答になってしまったことをお詫びいたします。
|
|
2021/11/11(Thu) 02:01:35|NO.94354
わたしですさんのレスが全て。instrの使い方が間違ってる。
まずスレ主は日本語というか、自分の言葉遣いをデバッグしてみては?
|
|
2021/11/11(Thu) 17:55:15|NO.94356
>>94354
意味深な発言になってしまいました。
修正版です。これでもアップデートしてしまいます。
#packopt version "ver.txt"
#packopt manifest "admin.manifest"
#include "kernel32.as"
title "58lala Setup"
color 0,0,200
boxf
font "MS UI Gothic",80
color 255,255,255
// 実行ファイルの二重起動防止 (by Kpan)
// http://lhsp.s206.xrea.com/hsp_system.html#5
#define ERROR_ALREADY_EXISTS $B7
; 第3パラに適当なユニーク文字列を指定する
CreateMutex 0, 0, "58lala Setup"
; エラーコードを確認
GetLastError
if stat = ERROR_ALREADY_EXISTS {
dialog "すでに起動しています。起動していないときは、再起動してください。"
end
}
#include "hspinets.as"
//#include "hsp3utf.as"
#include "zipfile.as"
netinit
version="https://nennneko5787.web.fc2.com/58lala/"
neturl version
netdlname "status.txt"
netload "ver.html"
notesel txt
noteload "status.txt"
a=instr(txt,0,"{Version:0.9}")
if a!=-1:goto *apudegaarudeyo
onerror goto *error
mes "58lala Setup"
font "MS UI Gothic",20
mes {"ここでは、58lalaのセットアップが行えます。
次へ進むには、次へボタンを押してください。"}
button "次へ",*setup2
stop
*setup2
cls
color 0,0,200
boxf
color 255,255,255
chdir "C:\\Program Files (x86)\\"
font "MS UI Gothic",40
mes "どのエディションをインストールしますか?"
font "MS UI Gothic",20
mes "58lala HomeEdition",1:button "選択",*homee
pos 0,60
mes "58lala Professonal",1:button "選択",*proe
pos 0,80
mes "58lala Education",1:button "選択",*edue
stop
*error
mes {"エラーが発生しました。
下のボタンを押してメールを送信してください。"}
button "メール",*mail
stop
*mail
exec "info_5787@tensi.org",16
end
*homee
et=1
goto *setup3
*proe
et=2
goto *setup3
*edue
et=3
goto *setup3
*setup3
cls
color 0,0,200
boxf
color 255,255,255
font "MS UI Gothic",30
mes "まだできてません!!次のアプデまでお持ちください!!"
//txt="てすと"
//notesel txt
//notesave "test.txt"
stop
*apudegaarudeyo
dialog "アプデがあるでよ\nダウンロードします。"
goto *apude
*apude
neturl "https://github.com/Nennneko5787/58lala_SetupFiles/archive/refs/heads/"
netdlname "58lala_setup.zip"
netload "/main.zip"
s1=dir_cur
ZipExtract "58lala_setup.zip",s1
if stat : dialog "アプデに失敗しました":end
dialog "アプデに成功しました。終了します。"
delete "58lala_setup.zip"
end
| |
|
2021/11/11(Thu) 18:01:07|NO.94357
よくみたら間違えてたよ!
|
|
2021/11/11(Thu) 18:01:52|NO.94358
ご迷惑をおかけして申し訳ございません。
|
|
2021/11/12(Fri) 00:27:15|NO.94360
ねんねこさんへ
アップデートの問題は、解決しましたか?
まだなら、回答する意味があるかな?
if a!=-1 は、if a!-1 と同じ事を表しています。
HDL から if 命令の、マニュアルを見ると
C言語やJavaの書式が、(※ = を == 、! を =!)
として、hsp3.x上で使える事になってます。
(※紛らわしいけどね。)
...後は、上で、わたしです さんが指摘した通り
変数名 a に入る値が、文字列 {Version:0.9}が
全く存在しない時以外は、無条件でラベルの
*apudegaaudeyo の処理に、行ってしまいます。
とりあえず、if 命令の条件式を、見直せば良いかと。
ネットから、ダウンロードしないとダメな物や
txt 、htmlファイルとかは、私達は、内容等が
どうなっているか、分からないので、現時点では
何とも言えないです。
ー追記ー
#include の塊の最終行と、ラベルの前の行は
空白行1行入れると、スクリプトが、見やすくなります。
こういった物(インデントの入れ方、コメント等)は
この掲示板の、上級者の方々のスクリプトを
参考にすると良いですよ。
|
|
2021/11/12(Fri) 00:47:18|NO.94361
訂正
(※ = を == 、! を!= ) ですね。説明間違えました。
申し訳ないです。
|
|
2021/11/13(Sat) 07:01:45|NO.94367
>>94360
参考にします、ありがとうございます!
<<マウスをなくした問題も解決しました!>>
|
|