2008-07-29

VMware Server 2.0 RC自動ログインスクリプト

VMware Serverを2.0RCにアップグレードしたらコンソールがVMware Infrastructure Web Access に変更されていて

ローカルでも一々ログインしなくてはいけなくなった。うざい、これはうざい

というわけで、自動ログインしてくれるスクリプトjavascriptで書いた。

それをここにメモる。(やっつけなのでハックしなかった。よってfireEventやsleepが無駄に使われてます。要改良)

//-------------------------------------------------------//
//--------  VMware Infrastructure Web Access  -----------//
//--------       自動ログインスクリプト       -----------//
//-------------------------------------------------------//

//--- 設定 ---//
var LoginName	= "hogehoge";	//ログイン名
var Password	= "hogehoge";	//パスワード
var host	= "127.0.0.1";	//サーバーホスト
var port	= "8308";	//サーバーポート
var bars	= false;	//ステータスバーとツールバーの表示・非表示設定(デフォルト非表示
var width	= 875;		//ウィンドウ横幅
var height	= 675;		//ウィンドウ縦幅


//--- 実処理 ---//
var IE = new ActiveXObject("InternetExplorer.Application");	//IE起動
IE.Visible = true;
IE.Statusbar = bars;
IE.ToolBar = bars;
IE.Width = width;	//ウィンドウサイズの変更がウザイ時はこの行と
IE.Height = height;	//この行をコメントアウトすればいいじゃない

IE.Navigate("http://" + host + ":" + port + "/ui/");	//ログインページにジャンプ

while(IE.Busy || IE.ReadyState != 4) WScript.Sleep(1);	//読み込み待ち

//フォームにログイン名とパスワード入力
IE.document.getElementById("vmtn.wtkx.theme.terra.TextInputSkin$login_field_username").getElementsByTagName("input")[0].value = LoginName;
IE.document.getElementById("vmtn.wtkx.theme.terra.TextInputSkin$login_field_username").getElementsByTagName("input")[0].fireEvent("onchange");
IE.document.getElementById("vmtn.wtkx.theme.terra.TextInputSkin$login_field_password").getElementsByTagName("input")[0].value = Password;
IE.document.getElementById("vmtn.wtkx.theme.terra.TextInputSkin$login_field_password").getElementsByTagName("input")[0].fireEvent("onchange");
WScript.Sleep(60);
IE.document.getElementById("vmtn.wtkx.theme.terra.LabelSkin#8").click();

トラックバック - http://anond.hatelabo.jp/20080729234418