プログラムに関して初心者です。上手く内容をお伝え出来ず、ご迷惑をおかけしてしまうかもしれませんが何卒皆さまのお力をお貸しいただけましたら幸いです。
###前提・実現したいこと
・現状
AシステムにてIDログイン(利用者毎にIDは異なる)→Aシステム上からBシステム(IE上で動作)をURL(getメソッド)にて起動できるようになっており、ID情報を引っ張り自動ログイン(特定のIDのみログイン可)しています。
・変更したい内容
現状どおりAシステムからのID情報を引っ張り、自動ログインできる状態にてBシステム(IE)を指定のウインドウサイズ、位置で開けるようにしたいです。
調べた所vbsにてウインドウサイズを指定してIE起動できることがわかり、その方法を利用。
Aシステム→
bat(Aシステムから直接vbsが起動出来ないため、vbs起動用として挟む)%1にてID情報をvbsへ→
vbsにてID情報を受け、IEをウインドウ指定して開く→objIE.NavigateでBシステムURLへGetメソッドで飛ぶように設定し自動ログインできるようにしたいです。
###ここに質問したいことを詳細に書いてください
AシステムからID情報をbatへ→引数をbatからvbsへ→vbsにてIE起動しgetメソッドでAシステムからのID情報をBシステムへ送れるようにする方法はありませんでしょうか。
###発生している問題・エラーメッセージ
vbsまではID情報を引っ張ってこれているようですが、vbsにてIE起動しgetメソッドでBシステムへID情報を送ることが出来ません。
###該当のソースコード
batファイル・vbs・URLgetメソッド
・batファイル
@echo off
rem batファイルからVBScriptを実行
cls
cscript //nologo C:\IeAutoStartUp.vbs %1
・vbs
Option Explicit
Dim objIE
Dim i
Dim intWidth
Dim intHeight
Dim intX
Dim intY
Dim oParam
'引数(パラメータ)の取得
Set oParam = WScript.Arguments
'初期設定(ウィンドウサイズ、表示位置に使用)
intWidth = 1280
intHeight = 920
intX = 0
intY = 80
'IEオブジェクトを作成します
Set objIE = CreateObject("InternetExplorer.Application")
'ウィンドウの大きさを変更します
objIE.Width = intWidth
objIE.Height = intHeight
'表示位置を変更します
objIE.Left = intX
objIE.Top = intY
'ステータスバーとツールバーを非表示にします
objIE.Statusbar = False
objIE.AddressBar = False
'URL指定(Getメソッド)
objIE.Navigate "http://○○/singlesignon.htm?UserID=oParam"
'インターネットエクスプローラ画面を表示します
objIE.Visible = True
###試したこと
上記内容を実施。
AシステムにてIDログイン→
AシステムにてbatへID情報を送り起動(そのようにできる設定があります)→
batにてvbs起動→
%1でログイン情報をvbsへ→
vbsにてBシステムへGetメソッドで起動(USERID=○○ の○○部分が自動でBシステムのログイン情報として変換されている模様ですがよくわかりません。)
しかしIDを引っ張れませんでした。(ログインフォームには oParamとでます)
vbsまでID情報を送れていることを確認するため、下記vbsでコマンドライン上にID情報を送れていることを確認しました。
Dim oParam
Set oParam = WScript.Arguments
Dim idx
For idx = 0 To oParam.Count - 1
WScript.echo oParam(idx)
Next
他、VBSでIEを指定ウインウサイズで開き、閉じるという動作を作成。そのvbsを起動してもらえば次回以降IEが指定位置・サイズで開くかと思いましたがvbsではウインドウを閉じてもIEの位置・サイズは記憶されませんでした。
###補足情報(言語/FW/ツール等のバージョンなど)
IE8上での動作となります。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/08/09 10:14
2016/08/09 10:51 編集
2016/08/09 11:06