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


HSPTV!掲示板


未解決 解決 停止 削除要請

2014
0902
kaiチェックボックスのパラメーターについて7解決


kai

リンク

2014/9/2(Tue) 19:21:17|NO.64628

ゴミ箱を空にするソフトを作っています。
チェックボックスを使用したのですが、パラメーターの方が違いますとおこられてしまいます。
ヘルプとかにしたがって作ったのですが、なぜでしょうか?

#include "hspext.as"
w = "0" mou = "0" exist "save/save.txt" if strsize = -1 { notesave "save/save.txt" } notesel save noteload "save/save.txt" noteget save,0 if save = "1" : { goto *dels } *home screen 0,200,95 objsize 200,50 pos 0,0 : mes " Del Trash 0.0.1 (C) kai" pos 0,20 : button "今すぐゴミ箱を空にする",*del objsize 200,24 pos 0, 70 : chkbox "windows起動時にゴミ箱を空にする",w repeat if mou = "0" { if w = "1" : goto *wk1 } loop stop *wk1 dialog "起動時に自動でゴミ箱を空にするように設定しました。" mou = "1" note = "1" noteadd note,0 notesave "save/save.txt" name = "Del Trash" chdir dirinfo( 0x10007 ) fxlink name, dir_exe + "Del Trash.exe" goto *home *del *dels



この記事に返信する


あり

リンク

2014/9/2(Tue) 19:37:42|NO.64630

Windowsの仕様でファイル名に半角の『/』は使えません。
【参考】
http://support.microsoft.com/kb/879124/ja
http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E5%90%8D#.E4.BD.BF.E7.94.A8.E3.81.8C.E4.B8.8D.E5.8F.AF.E8.83.BD.E3.81.AA.E8.A8.98.E5.8F.B7


これを解消してもまだ幾つか別のエラーが出るのでそれは自分で解決してください。



名無し

リンク

2014/9/2(Tue) 19:55:01|NO.64631

とりあえず/を\\(円マーク2つ)に変えてください。
他にも間違いありますが、それは後で



kai

リンク

2014/9/2(Tue) 21:00:03|NO.64641

#include "hspext.as"
w = 0 mou = "0" exist "save\\save.txt" if strsize = -1 { notesave "save\\save.txt" } notesel save noteload "save\\save.txt" noteget save,0 if save = "1" : goto *dels *home screen 0,200,95 objsize 200,50 pos 0,0 : mes " Del Trash 0.0.1 (C) kai" pos 0,20 : button "今すぐゴミ箱を空にする",*del objsize 200,24 pos 0, 70 : chkbox "windows起動時にゴミ箱を空にする",w repeat if mou = "0" { if w = 1 : goto *wk1 } wait 10 loop stop *wk1 dialog "起動時に自動でゴミ箱を空にするように設定しました。" mou = "1" note = "1" noteadd note,0 notesave "save\\save.txt" name = "Del Trash" chdir dirinfo( 0x10007 ) fxlink name, dir_exe + "Del Trash.exe" goto *home *del
に直したらできました!!
ありがとうございました。



掘木

リンク

2014/9/3(Wed) 09:19:20|NO.64651

解決済みですが、これって"/"を"\\"に変えた意味あるのでしょうか?
どちらもwin環境では同じものとして扱われると思っていたのですが。
これを最優先で指摘するのには、どういう理由があるのでしょう?気になります。
(ファイル指定に"\\"でなく"/"を使ってもエラーを吐かれたことはないし、
 二重に振る必要がない分打ちやすく、見た目もすっきりするので重宝しているのですが。
("/"を使えないのなら、出るエラーは"無効なファイル名"でしょう。
 型不一致エラーがでている以上、そこはkaiさんの環境ではエラー原因になっていないような。

>kaiさん
existで-1が返った場合に、noteselの前にnotesaveを実行する事になってエラーを吐きますよ。



あり

リンク

2014/9/3(Wed) 11:05:46|NO.64655

>>掘木さん

仰る通り完全に私の勘違いです。
『save/save.txt』をディレクトリ指定入りと気づけず
ファイル名の問題だと思い込んだまま
ディレクトリ指定が無いものとしてエラー修正を進めてしまったので
noteselへの認識が後回しになってしまいました。

この時点での正しい指摘は掘木さんの言われているように
『noteselをnotesaveより前に置かなければならない』という事ですね。

私の至らない回答のせいでkaiさんには大変ご迷惑をお掛けしました。
心よりお詫び申し上げます。



cats

リンク

2014/9/3(Wed) 11:50:15|NO.64657

>解決済みですが、これって"/"を"\\"に変えた意味あるのでしょうか?
基本的には同じ意味ですがHSPの一部の命令では\\じゃないと
正常に動作しなかった気がします。
覚えてませんが何かの命令で相対パス指定するときに\\が必要でした。



掘木

リンク

2014/9/3(Wed) 12:10:52|NO.64658

>ありさん
HSPの文法上非推奨とかそんなレベルの話かと思ってたので、
特別な意図がないと確認できたので満足です。

>catsさん
パス区切りとしてバックスラッシュのみが対応してるような命令もあるのかー。よく分からんなあ。
想定外のエラーがでた際の候補として頭の片隅に入れておきます。。


自己解決してるようですが、本来の問題の原因を明示化すると
chkboxの状態保持変数は数値型でなければいけないことでしょうね。



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