サイボウズOffice7に自動ログインするスクリプトです。
おそらくOffice8でも動作するのでは無いかと思いますが未確認です。
また、設定でユーザアカウントをログイン画面に表示させている場合には、多少スクリプトを修正しなければおそらく動作しません。遊び心で特定の端末が指定の時間までにPING応答が無い場合に「xxxさんお休みです。」みたいな書き込みをするスクリプトを作ろうかとも思ったのですが、そこまで作っていません。
また、スクリプトにIDとパスワードを直接記載する必要があるので、セキュリティ的にも実は、あまりお勧めではありません。あくまでお遊びスクリプトです。
使い方
以下のスクリプトをメモ帳等でテキスト文書に保存して、拡張子を”vbs”に変更してください。
スクリプト中の”HOSTNAME”にサイボウズOfficeがインストールされているサーバを指定し、”USERNAME”にログイン名、”PASSWORD”にはパスワードを入力します。
あとは実行するだけです。
'サイボウズOffice7自動ログインスクリプト Option explicit Set objIE = CreateObject("InternetExplorer.Application") Dim USERNAME Dim PASSWORD Dim HOSTNAME Dim StrHTML Dim StrHTML_LINE Dim objIE '------------↓変更必要箇所↓---------------- HOSTNAME = "" USERNAME = "" PASSWORD = "" '------------↑変更必要箇所↑---------------- Call Main() Set objIE = Nothing Sub Main() objIE.Visible = True 'サイボウズログイン画面 objIE.Navigate "http://" & HOSTNAME & "/ag.exe?" 'メニューバーを表示するかどうか。 objIE.MenuBar = True While objIE.Busy Or objIE.ReadyState <> 4 Wend If AM_I_AUTH() = False Then objIE.document.all.Item("_Account").Value = USERNAME objIE.document.all.Item("PASSWORD").Value = PASSWORD objIE.document.all.Item("Submit").Click End If End Sub '既にサイボウズにログイン済みかどうかのチェック Function AM_I_AUTH() StrHTML = Split(objIE.document.body.innerHTML,vbCrLf) for each StrHTML_LINE in StrHTML If StrHTML_LINE = "<TD noWrap align=right>ログイン名</TD>" Then AM_I_AUTH = False Exit Function End If Next AM_I_AUTH = True End Function
サイボウズコミュニティにガルーン用のスクリプトの事も記載されていたので、自分で利用していたガルーンで利用出来るスクリプトも雑ですが以下に記載しておきます。
'サイボウズガルーン3 ログインスクリプト Option Explicit Dim strUser Dim strPassword Dim strUserName Dim objIE 'サイボウズにログインする際に利用しているIDとパスワードを入力します。 strUser = "" strPassword = "" 'ログインした際に表示される名前を以下に入力します。 '(例)strUserName = "ぴーえぬぴーけー" strUserName = "" 'サイボウズガルーンのトップページのURLを以下に入力します。 '(例)strGaroonURL = "http://hogehoge/scripts/cbgrn/grn.exe" strGaroonURL = "" Set objIE = WScript.CreateObject("InternetExplorer.Application","ie_") objIE.Visible = True objIE.Navigate strGaroonURL While objIE.Busy Or objIE.ReadyState <> 4 Wend Dim StrHTML '表示したページにstrUserNameで定義した文字列が無ければログインフォームと見なしてログインを試みる StrHTML = objIE.document.body.innerHTML If instr( StrHTML,strUserName ) = 0 Then objIE.document.all("_account").Value = strUser objIE.document.all("_password").Value = strPassword objIE.document.all("login").submit() End If While objIE.Busy Or objIE.ReadyState <> 4 Wend Set objIE = Nothing
また、Windows7 64bitでVBSを実行すると既定だと64Bit版のIEが起動してしまうので、以下のようなショートカットを作成して32bit環境のIEが起動させてください。
%windir%\SysWoW64\cmd.exe /c Cscript hogehoge.vbs
こんにちは、コメントありがとうございます。
Windows XP SP3をRISで展開した事がありますので、おそらくSP3化したイメージでも動作する事はすると思います。
※自分の場合はWindows XP SP3のDVDイメージを利用しました
在り来たりな返信となってしまいますが、RISのどの段階で停止しますでしょうか。
OSのバージョンをSP2からSP3にする時に、サーバ上のイメージを一旦全削除している場合には、もしかすると必要なドライバが無くなっている可能性もあるかもしれません。
物理PCで確認を行う場合、ドライバー等の兼ね合いもあると思いますので、
環境の準備が可能であればですが、動作確認をVirtual ServerやHyper-V上の端末で実施するとその辺の切り分けは楽かもしれません。
仮想サーバであれば一通りのドライバはOS標準搭載のものを利用出来ると思います。
あまりお力になれていないですが、よろしくお願いします。
はじめまして管理人殿、RISの項、同様の手順で実施していました。そういえばSATAのAHCIが出たときには試行錯誤しましたね。
もしわかれば教えて頂きたいのですが、RIS上にはXPproSP2でセットアップされているのですが、最近それを基にしたセットアップ済みXPをSP3化させてアップロードしたイメージを作成しましたが動きません。(HALAHCIほかのHALは未だ試していません)
そういった事象に心当たりがあればどんな情報でもいいので教えていただけませんか?