vbscript – VB错误“需要对象”
发布时间:2020-12-17 00:17:26 所属栏目:大数据 来源:网络整理
导读:当我运行以下脚本时,我在第54行(最后一行)收到“需要对象”错误.怎么了? Option ExplicitDim cmdString,g_strHostFile,filepath,flexnetpath,importcmd,dtmToday,dtmYesterday,dtmFileDate,param1,param2,param3,i4path,objFSO,objTextStream,g_strComputer
当我运行以下脚本时,我在第54行(最后一行)收到“需要对象”错误.怎么了?
Option Explicit Dim cmdString,g_strHostFile,filepath,flexnetpath,importcmd,dtmToday,dtmYesterday,dtmFileDate,param1,param2,param3,i4path,objFSO,objTextStream,g_strComputer,WshShell 'Initialize global constants and variables. Const FOR_READING = 1 g_strHostFile = "D:dataimportsLUM_servers.txt" i4path = "C:IFORWINBINi4blt.exe" filepath = "D:DataImports" flexnetpath = "C:Program Files (x86)FlexnetManagerAdmin" importcmd = flexnetpath & "flexnet bulkimport -uadmin -padmin -f" & filepath dtmToday = Date() dtmYesterday = Date() - 1 dtmFileDate = Year(Date) & padDate(Month(Date)) & padDate(Day(Date)) param1 = "-r1 -e2,4 -n " param2 = " -v 'Dassault Systemes' -b " param3 = " -g " WScript.Echo "i4Path: " & i4path WScript.Echo "FilePath: " & filepath WScript.Echo "flexnetpath: " & flexnetpath WScript.Echo "importcmd: " & importcmd WScript.Echo "dtmToday: " & dtmToday WScript.Echo "dtmYesterday: " & dtmYesterday WScript.Echo "dtmFileDate: " & dtmFileDate 'Read LUM Server Names from text file. Set objFSO = CreateObject("Scripting.FileSystemObject") If objFSO.FileExists(g_strHostFile) Then Set objTextStream = objFSO.OpenTextFile(g_strHostFile,FOR_READING) Else WScript.Echo "Input file " & g_strHostFile & " not found." WScript.Quit End If 'Loop through list of computers and perform tasks on each. Do Until objTextStream.AtEndOfStream g_strComputer = objTextStream.ReadLine WScript.Echo "Processing Server: " & g_strComputer Set cmdString = i4path & param1 & g_strComputer & param2 & dtmYesterday & param3 & dtmToday & filepath & g_strComputer & "_" & dtmFileDate & "_lum.lrl" WScript.Echo "Processing Command: " & cmdString Set WshShell = WScript.CreateObject("WScript.Shell") WshShell.Run "cmdString" Loop objTextStream.Close Set WshShell = WScript.CreateObject("WScript.Shell") WScript.Echo "Processing Bulk Import: " & importcmd WshShell.Run "importcmd" Function padDate(intNumber) if intNumber <= 9 Then padDate = "0" & CStr(intNumber) Else padDate = CStr(intNumber) End If End Function
我想有一些问题.
importcmd = flexnetpath & "flexnet bulkimport -uadmin -padmin -f" & filepath 你可能需要一些空格: importcmd = flexnetpath & " flexnet bulkimport -uadmin -padmin -f " & filepath Set仅用于对象,而不是字符串,因此应从此行中删除它: Set cmdString = i4path & param1 & g_strComputer & param2 & dtmYesterday & param3 & dtmToday & filepath & g_strComputer & "_" & dtmFileDate & "_lum.lrl" 我很确定你要么意思 WshShell.Run importcmd 要么 WshShell.Run """" & importcmd & """" (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |