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


HSPTV!掲示板


未解決 解決 停止 削除要請

2011
0213
(^ω^)HSP グローバルIP6解決


(^ω^)

リンク

2011/2/13(Sun) 23:44:22|NO.37091

HSPで特定のグローバルIPのみ自作ソフトを起動したいです

ローカルIPでは成功しました


#packopt hide 1

#include "Hspsock.as"
#define IP_CHK_ "OOO.OOO.OO.O"
ipget
IP_YOU=refstr
if IP_YOU ! IP_CHK_:end

グローバルIPでは、どうやればいいのでしょうか?

ソースコードをお願いします _



この記事に返信する


cookies

リンク

2011/2/14(Mon) 00:38:33|NO.37094

あれ? なんで同じようなスレッド二つ目作ったんですか?

「HSP IP制限」スレの1レス目にとてもいいヒントがあります。
そのWebページのをコピーしてレスの通りし、
あなたのソースに組み込めばできると思います。



inovia

リンク

2011/2/14(Mon) 01:05:42|NO.37097

グローバルIPを取得する方法は先ほど提示しているので、
取得したものとあらかじめ決めておいたIPと比較して
違っていれば終了するだけですが?

それでもよくわからないということですか?



(^ω^)

リンク

2011/2/14(Mon) 01:43:58|NO.37099

#packopt hide 1

#include "Hspsock.as"
#define IP_CHK_ "OOO.OOO.OOO.OOO"
ipget
IP_YOU=refstr
if IP_YOU ! IP_CHK_:end

上記のソースコードです



nikon

リンク

2011/2/14(Mon) 01:44:47|NO.37100

なぜか私の書いたレスが消されてる・・・ お主只者ではないな?(苦笑



inovia

リンク

2011/2/14(Mon) 02:01:43|NO.37106

そんなにくっつけるの難しいですかね。


#module #include "hspsock.as" #define global urlHTTP "checkip.dyndns.org" // 接続URL #define global fileHTTP "/" // 接続ファイル #define global portHTTP 80 // ポート #define global timeHTTP 1000 // タイムアウト用 #define global sizeHTTP 1024 // パケットサイズ #define global tagHTTP "body" // 読み出し前タグ #define global keywordHTTP "Current IP Address:" // 読み出し前キーワード #defcfunc getIP /*ソケット生成*/ sockopen 0, urlHTTP, portHTTP if (stat != 0) { dialog "接続エラーです", 1, "エラー" : stop } /*パケット送信(GETメソッド)*/ sockput "GET "+fileHTTP+" HTTP/1.0\nHost:???\nUser-Agent:???\n\n" if (stat != 0) { dialog "送信エラーです", 1, "エラー" : stop } /*変数初期化*/ dim flg, 1 dim size, 1 dim p, 1 sdim buf, sizeHTTP, 2 /*取得ループ*/ repeat timeHTTP /*パケット取得部分*/ sockget buf(0), sizeHTTP if (stat != 0) { dialog "('A`)", 1, "エラー" : stop } /*内容確認*/ if (peek(buf(0), 0) == 0) { /*受信終了したなら*/ : flg = 1 break } : buf(1) = buf(1)+buf(0) await 100 loop /*ソケット解放*/ sockclose 0 /*フラグ判定*/ if (flg != 0) { /*受信成功したなら*/ /*パケットのヘッダから*/ : p = instr(buf(1), 0, "\n\n") : buf(1) = strmid(buf(1), p, strlen(buf(1))) : p = instr(buf(1), 0, "<"+tagHTTP+">") : buf(1) = strmid(buf(1), p+strlen(tagHTTP)+2, strlen(buf(1))) : p = instr(buf(1), 0, "</"+tagHTTP+">") : buf(1) = strmid(buf(1), 0, p) : p = instr(buf(1), 0, ""+keywordHTTP+"") : buf(1) = strmid(buf(1), p+strlen(keywordHTTP), strlen(buf(1))) } else { /*受信失敗したなら*/ : buf(1) = "" } return buf(1) #global #packopt hide 1 #include "Hspsock.as" #define IP_CHK_ "OOO.OOO.OOO.OOO" gIP = getIP() gIP = strtrim(gIP) ; ゴミ除去 if gIP ! IP_CHK_:end



Jack

リンク

2011/2/14(Mon) 02:07:41|NO.37107

上の方ありがとうございました

お蔭様で解決しました



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