Hello,
I want to merge 2 vbs scripts due I want to monitor a web service, executing a method and writing the Response into a txt log on the server.
Both scripts will run on the local server. How can I merge them?
This is the first script:
And i want to merge it with this one due I want that the Response can be saved into a txt log.Code:'**************************************************** ' Clase de WebService '**************************************************** class WebService public Url public Method public Response public Parameters 'Función para invocar el Web Service public function execute() dim xmlhttp Set xmlhttp = CreateObject("Microsoft.XMLHTTP") xmlhttp.open "POST", Url & "/" & Method, false xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" xmlhttp.send Parameters.toString response = xmlhttp.responseText set xmlhttp = nothing end function Private Sub Class_Initialize() Set Parameters = new wsParameters End Sub Private Sub Class_Terminate() Set Parameters = Nothing End Sub End class '**************************************************** ' Clase de wsParameters '**************************************************** class wsParameters public mCol public function toString() dim nItem dim buffer buffer = "" for nItem = 1 to Count buffer = buffer & Item(nItem).toString & "&" next if right(buffer,1)="&" then buffer = left(buffer,len(buffer)-1) end if toString = buffer end function public sub Clear set mcol = nothing Set mCol = CreateObject("Scripting.Dictionary") end sub public sub Add(pKey,pValue) dim newParameter set newParameter = new wsParameter newParameter.Key = pKey newParameter.Value = pValue mCol.Add mCol.count+1, newParameter set newParameter = nothing end sub public function Item(nKey) set Item=mCol.Item(nKey) end function public function ExistsXKey(pKey) dim nItem for nItem = 1 to mcol.count if mCol.Item(nItem).key = pKey then ExistsXKeyword = true exit for end if next end function public sub Remove(nKey) mCol.Remove(nKey) end sub public function Count() Count=mCol.count end function Private Sub Class_Initialize() Set mCol = CreateObject("Scripting.Dictionary") End Sub Private Sub Class_Terminate() Set mCol = Nothing End Sub end class '**************************************************** ' Clase de wsParameter '**************************************************** class wsParameter public Key public Value public function toString() toString = Key & "=" & Value end function end class dim ws 'Crear el objeto de Web Service set ws = new webservice ws.Url = "http://xxxxxxxxxxxxxxxxxxxxxx.asmx" 'Se quiere llamar a este método ws.Method = "PermisosUsuario" 'Se llenan los parámetros de consulta ws.Parameters.Add "login", "1234390p" ws.Parameters.Add "password","temp" ws.execute Option Explicit Dim objFSO, objFolder, objShell, objTextFile, objFile Dim strDirectory, strFile, strText strDirectory = "c:\logs3" strFile = "\Summer.txt" strText = " & ws.Response" ' Create the File System Object Set objFSO = CreateObject("Scripting.FileSystemObject") ' Check that the strDirectory folder exists If objFSO.FolderExists(strDirectory) Then Set objFolder = objFSO.GetFolder(strDirectory) Else Set objFolder = objFSO.CreateFolder(strDirectory) WScript.Echo "Just created " & strDirectory End If If objFSO.FileExists(strDirectory & strFile) Then Set objFolder = objFSO.GetFolder(strDirectory) Else Set objFile = objFSO.CreateTextFile(strDirectory & strFile) Wscript.Echo "Just created " & strDirectory & strFile End If set objFile = nothing set objFolder = nothing ' OpenTextFile Method needs a Const value ' ForAppending = 8 ForReading = 1, ForWriting = 2 Const ForAppending = 8 Set objTextFile = objFSO.OpenTextFile _ (strDirectory & strFile, ForAppending, True) ' Writes strText every time you run this VBScript objTextFile.WriteLine(strText) objTextFile.Close WScript.Quit ' End of VBScript to write to a file with error-correcting Code set ws = nothing
Thanks for your helpCode:Option Explicit Dim objFSO, objFolder, objShell, objTextFile, objFile Dim strDirectory, strFile, strText strDirectory = "c:\logs" strFile = "\ws.txt" strText = " & ws.Response" ' Create the File System Object Set objFSO = CreateObject("Scripting.FileSystemObject") ' Check that the strDirectory folder exists If objFSO.FolderExists(strDirectory) Then Set objFolder = objFSO.GetFolder(strDirectory) Else Set objFolder = objFSO.CreateFolder(strDirectory) End If If objFSO.FileExists(strDirectory & strFile) Then Set objFolder = objFSO.GetFolder(strDirectory) Else Set objFile = objFSO.CreateTextFile(strDirectory & strFile) End If set objFile = nothing set objFolder = nothing ' OpenTextFile Method needs a Const value ' ForAppending = 8 ForReading = 1, ForWriting = 2 Const ForAppending = 8 Set objTextFile = objFSO.OpenTextFile _ (strDirectory & strFile, ForAppending, True) ' Writes strText every time we run this VBScript objTextFile.WriteLine(strText) objTextFile.Close WScript.Quit


Reply With Quote