@echo off :: This batch file will create a web page, then use :: Visual Basic Scripting and the Windows Scripting Host :: to launch Internet Explorer to show that page. :: Values entered in the web page will be read via :: scripting, then will be saved as %TEMP%\USERIN.BAT :: After the USERIN.BAT is CALLed from the main batch :: (and assuming there is enough room in the environment) :: environmental variables USERNAME and PASSWORD will be set. :: It is your responsibility to delete the USERIN.BAT :: after you CALL it. Because this batch file needs to :: find itself, you must be sure to call it from your :: main batch file with a full path and file name. :: Written and tested under Win95. NT/2000/XP users will :: have to do some modifications before it will work. :: For example, %0 changes to %f0 :: Public Domain. Use freely. No guarantees! It may not work! :: http://www.ericphelps.com cls echo Please enter your user name and password in the entry box... :: See if I can find myself If not exist %0 goto ERROR :: Make the web page type %0 | find " " | find /v " " | find /v "Not Me!" > %TEMP%\UserIn.htm :: Make the VBS code type %0 | find " " | find /v " " | find /v "Not Me!" > %TEMP%\UserIn.vbs :: Run the vbs code start /w wscript.exe %TEMP%\UserIn.vbs :: At this point a batch file "%TEMP%\UserIn.bat" exists and you should :: call it! If you don't call the batch file here and instead opt to :: call it from another batch file, be sure NOT to delete it in the :: "Clean up" code section below! call %TEMP%\UserIn.bat echo Your user name is %USERNAME% echo Your password is %PASSWORD% :: Clean up del %TEMP%\UserIn.vbs del %TEMP%\UserIn.htm del %TEMP%\UserIn.bat goto DONE :ERROR cls echo %0 is not the full path and file name echo for the batch file. You MUST call this echo batch file with a full path and file name. goto DONE :HTML :: All HTML code MUST be indented exactly four spaces. :: NOTHING else in this batch file may be indented four spaces.
User Name:

Password:

:VBS :: All VBS code MUST be indented exactly five spaces. :: NOTHING else in this batch file may be indented five spaces. Set fs = CreateObject("Scripting.FileSystemObject") strFile = fs.GetAbsolutePathName(fs.BuildPath(fs.GetSpecialFolder(2), "UserIn.htm")) Set web = CreateObject("InternetExplorer.Application") web.Offline = True web.AddressBar = False web.Height = 200 web.Width = 250 web.MenuBar = False web.StatusBar = False web.Silent = True web.ToolBar = False web.Navigate strFile Do While web.Busy Loop On Error Resume Next Set doc = Nothing Do Until Not doc Is Nothing Set doc = web.Document Loop doc.Forms(0).elements("username").focus web.Visible = True Err.Clear Do Until doc.Forms(0).elements("submit").Value <> "OK" Wscript.Sleep 100 If Err.Number <> 0 Then Exit Do Loop strFile = fs.GetAbsolutePathName(fs.BuildPath(fs.GetSpecialFolder(2), "UserIn.bat")) Set ts = fs.OpenTextFile(strFile, 2, True) ts.WriteLine "SET USERNAME=" & doc.Forms(0).elements("username").Value ts.WriteLine "SET PASSWORD=" & doc.Forms(0).elements("password").Value ts.Close web.Quit :DONE