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


HSPTV!掲示板


未解決 解決 停止 削除要請

2009
0225
26℃execのエラー9解決


26℃

リンク

2009/2/25(Wed) 17:54:17|NO.23593

exec "http://www.yahoo.co.jp/", 16
というソースをコンパイル+実行すると、
ブラウザのFIrefox3が開くのですが、エラーがHSPで起こります。

再度、コンパイル+実行するとエラーはでません。
パソコンを再起動させコンパイル+実行するとエラーがまた起こります。

この症状から、原因は何と考えれるでしょうか



この記事に返信する


check

リンク

2009/2/25(Wed) 20:19:52|NO.23600

・・・俺の環境では何もエラーが出なかったが?
HSPで何のエラーが出るんだ?



26℃

リンク

2009/2/25(Wed) 20:35:18|NO.23601

---------------------------
Error
---------------------------
#Error 14 in line 1 (aa.hsp)
-->外部ファイル呼び出し中のエラーです

---------------------------
OK
---------------------------
1行目はもちろん、exec "http://www.yahoo.co.jp/", 16です

やっぱり、自分だけエラーが出るんでしょうか・・?



やまねこ

リンク

2009/2/25(Wed) 22:33:24|NO.23603

私も1回だけ同じエラーが出ました。
再起動はしていないので、起動して初めにだけ出るエラーかどうかは分かりませんが…
ちなみに私のブラウザはfirefox3のportableです。

あと、他のファイル(jpgやico、zip)でも試してみましたが、エラーは出ませんでした。



26℃

リンク

2009/2/26(Thu) 10:25:14|NO.23610

やまねこありがとうございます、おそらく再起動させると
再びエラーが出るのではと思います。

fireFoxとエラーが関係しているのかな・・
規定のブラウザをIEに変更するとエラーは出なかったので。



26℃

リンク

2009/2/26(Thu) 22:51:57|NO.23626

さんづけしてませんでした、すいません。

exec意外に規定のブラウザを立ち上げる方法ってないものですかね。



名無し

リンク

2009/2/26(Thu) 23:29:36|NO.23627

いえいえ^^;

ところでexec以外にでしたらWin32APIを使えばできるかと思います。
ShellExecute関数(http://msdn.microsoft.com/ja-jp/library/cc422072.aspx)がexecのパラメータ16と同様の振る舞いをするのでそれがいいかと。
ここ(http://support.microsoft.com/kb/224816/ja)に実際の使用例があります。
ちなみにこちら(http://rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng.cgi?print+200510/05100026.txt)で不具合が出る方の情報も載っているようなので参考までに。

私の書いたHSPサンプルも一応貼っておきます。

#uselib "shell32.dll" #func ShellExecute "ShellExecuteA" int, str, str, str, str, int ShellExecute 0, "", "http://www.yahoo.com/", "", "", 1
私の環境では無事実行できましたが、もし不具合など出るようでしたら言って下さい。



やまねこ

リンク

2009/2/26(Thu) 23:31:09|NO.23628

あ、上の書き込みは私のです。



inovia

リンク

2009/2/26(Thu) 23:53:51|NO.23629

こんなのもありかな〜


#include "hspext.as" url="http://hsp.tv/" regkey 3,"http\\shell\\open\\command",0 if stat!=0:dialog "レジストリ読み取りエラー":end sdim reg,256 getreg reg,"",1,256 //(既定)は""でOK //reg="D:\\PROGRA~1\\MOZILL~1\\FIREFOX.EXE -requestPending -osint -url \"%1\"" //Firefoxのパス //以下ゴミとり s=instr(reg,0,"\"") if (s!=-1)&(s<2){// " があった場合。 e=instr(reg,s+1,"\"") if e=-1:e=strlen(reg) path=strmid(reg,s+1,e-s) }else{ e=instr(reg,0," ") path=strmid(reg,0,e) } exist path if strsize=-1:dialog "取得失敗?":end exec "\""+path+"\" "+url



26℃

リンク

2009/2/27(Fri) 00:59:15|NO.23630

やまねこさん、inoviaさんありがとうございます。
どちらの方法も無事エラーが出ることなくブラウザーを起動できました。



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