2017年05月 / 04月≪ 12345678910111213141516171819202122232425262728293031≫06月

インフォメーション

FC2ブログで画像等を一括アップロードするソフトを地味に配布してます。
FC2ブログ用ファイルアップロードの最新版はこちら
(ベクター)FC2ブログ用ファイルアップロード

--.--.-- (--)

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


 |  --:--  |  スポンサー広告  |  Top↑

2009.12.26 (Sat)

UWSCでアラド戦記自動ログイン nexon対応

2009/01/05 追記

IE7で動かしたところちゃんと動かなかったのでIE7に対応するよう修正


ここずっとやってなかったアラドを久々にやろうかなと思って
過去のUWSCでのアラド自動ログイン動かしたら動かない。

仕方ないので作り直しました。

ハンゲバージョンとネクソンバージョンを作ったので、自分のアカウントに合わせてダウンロードしてください。

ハンゲバージョン
arad_login_h.txt
Nexonバージョン
arad_login_n.txt
↑「.txt」を「.uws」に変えて、各設定をして使ってください。
テスト環境:IE8

詳しい使い方は
UWSCでアラド戦記自動ログイン
を参考に。

JoyToKeyも同時に起動出来るようにしてます。
JOY_TO_KEY_PATHは自分のJoyToKey.exeの場所を指定して。

んでJoyToKeyを起動する場合、Vistaだと管理者権限が必要となると思うので、UWSCを常に管理者権限で実行させるようにしとくと良いかもしれないけどそれってちょっと心配。




一応中身乗せときます。
ハンゲバージョン

// ****************************
// 設定
// ****************************
USER_ID = "userID"
PASSWORD = "password"

// JoyToKeyを起動させる設定
JOY_TO_KEY_START = 0 // 0:起動させない 1:起動させる
// JoyToKeyのパス(自分の環境に合わせる)
JOY_TO_KEY_PATH = "C:\jtk379\jtk379\JoyToKey.exe"



// ****************************
// メイン処理
// ****************************
TRY

PUBLIC IE = CreateOLEObj("InternetExplorer.Application")
PUBLIC ID = HNDTOID(ie.hwnd)

IE.Visible = true

IE.Navigate2("http://arad.hangame.co.jp/")

// IEのバージョン取得
ws = CreateOleObj("Wscript.Shell")
Version = token(".", ws.RegRead("HKLM\Software\Microsoft\Internet Explorer\Version"))
// IE7対応
IFB Version = 7 THEN
IE.Quit
IE = Nothing
objShell = CreateOLEObj("Shell.Application")
IE = objShell.Windows.Item(objShell.Windows.Count - 1)
IE.Navigate2("http://arad.hangame.co.jp/")
ENDIF

REPEAT
SLEEP(0.1)
UNTIL !IE.busy AND IE.readystate=4

// ログインフラグ
login_flag = false

// ログイン中か
IFB IE.Document.getElementById("logininfo_memberid") > 0 THEN
login_flag = true
// IDとパスワードがセットできたら
ELSEIF IESETDATA(IE, USER_ID, "strmemberid") and IESETDATA(IE, PASSWORD, "strpassword")
imgs = IE.document.All("loginform").getElementsByTagName("img")
// ログイン画像検索
for j = 0 to imgs.Length - 1
// ログインボタンを探す
ifb Pos("btn_login", imgs.Item[j].src) > 0
imgs.Item[j].click // 画像クリック
login_flag = true
break
endif
next
ENDIF

// ログインできた場合
IFB login_flag THEN
// JoyToKeyを起動する
IFB JOY_TO_KEY_START = 1 THEN
// JoyToKeyがあるかチェック
IFB FOPEN(JOY_TO_KEY_PATH, F_EXISTS) THEN
// JoyToKey起動
exec(JOY_TO_KEY_PATH)
EXIT
ELSE
msgbox("JoyToKeyが見つかりません。<#cr>[" + JOY_TO_KEY_PATH + "]")
ENDIF
ENDIF
ELSE
msgbox("ログインできません")
ENDIF
EXCEPT
msgbox("エラー:" + TRY_ERRMSG)
exit
ENDTRY

ネクソンバージョン

// ****************************
// 設定
// ****************************
USER_ID = "userID"
PASSWORD = "password"

// JoyToKeyを起動させる設定
JOY_TO_KEY_START = 0 // 0:起動させない 1:起動させる
// JoyToKeyのパス(自分の環境に合わせる)
JOY_TO_KEY_PATH = "C:\jtk379\jtk379\JoyToKey.exe"



// ****************************
// メイン処理
// ****************************
TRY
PUBLIC IE = CreateOLEObj("InternetExplorer.Application")
PUBLIC ID = HNDTOID(ie.hwnd)

IE.Visible = true

IE.Navigate2("http://www.arad.jp/")

// IEのバージョン取得
ws = CreateOleObj("Wscript.Shell")
Version = token(".", ws.RegRead("HKLM\Software\Microsoft\Internet Explorer\Version"))
// IE7対応
IFB Version = 7 THEN
IE.Quit
IE = Nothing
objShell = CreateOLEObj("Shell.Application")
IE = objShell.Windows.Item(objShell.Windows.Count - 1)
IE.Navigate2("http://www.arad.jp/")
ENDIF

REPEAT
SLEEP(0.1)
UNTIL !IE.busy AND IE.readystate=4

// ログインフラグ
login_flag = false

// ログイン中か
IFB IE.Document.getElementById("frmLogout") > 0 THEN
login_flag = true
ELSE
// ログインする
frmLogin = IE.Document.getElementById("frmLogin")
IFB frmLogin > 0 THEN
inputs = frmLogin.getElementsByTagName("input")
FOR i = 0 TO inputs.length - 1
SELECT inputs.Item[i].type
CASE "text"
inputs.Item[i].value = USER_ID
CASE "password"
inputs.Item[i].value = PASSWORD
SELEND
NEXT

as = frmLogin.getElementsByTagName("a")
FOR i = 0 TO as.length - 1
IFB POS("checkLoginFrm()", as.Item[i].outerHTML) > 0 THEN
as.Item[i].click()
login_flag = true
ENDIF
NEXT
ENDIF
ENDIF

// ログインできた場合
IFB login_flag THEN
// JoyToKeyを起動する
IFB JOY_TO_KEY_START = 1 THEN
// JoyToKeyがあるかチェック
IFB FOPEN(JOY_TO_KEY_PATH, F_EXISTS) THEN
// JoyToKey起動
exec(JOY_TO_KEY_PATH)
ELSE
msgbox("JoyToKeyが見つかりません。<#cr>[" + JOY_TO_KEY_PATH + "]")
EXIT
ENDIF
ENDIF
ELSE
msgbox("ログインできません")
ENDIF
EXCEPT
msgbox("エラー:" + TRY_ERRMSG)
exit
ENDTRY


 |  00:22  |  UWSC  |  トラックバック(0)  |  コメント(0)  |  Top↑

Comment

コメントを投稿する

URL
コメント
パス  編集・削除するのに必要
非公開  管理者だけにコメントを表示
 

Trackback

この記事のトラックバックURL

この記事へのトラックバック

 | BLOGTOP | 
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。