Así que escribí el siguiente vbscript para leer unarchivo que la línea de comandos de salida. El contenido del archivo sería simplemente (COMx) con x siendo el número de puerto del dispositivo en cuestión. Se supone que este script lee ese archivo y saca "x" y lo guarda en un nuevo archivo de texto. Escribí esto hace aproximadamente dos semanas y lo probé, funcionó. Ahora parece que, sin importar lo que haga, no puedo trabajar en absoluto. Esto es tan desconcertante como funcionó hace dos semanas. Ahora solo crea un archivo de salida sin nada en él. No sé si Cambié accidentalmente algo o qué, pero cualquier ayuda sería apreciada.
Const ForReading = 1
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("C:rtlstuffCOM.txt", ForReading)
strContents = objFile.ReadAll
objFile.Close
Set regex = New RegExp
With regex
.Pattern = ".*(COM(.+)?).*"
End With
Dim ComPort
If regex.Test(strContents) Then
ComPort = regex.Replace(strContents,"$1")
End If
Set objFSO=CreateObject("Scripting.FileSystemObject")
outFile="c:rtlstuffComPort.txt"
Set objFile = objFSO.CreateTextFile(outFile,True)
objFile.Write ComPort
objFile.Close
Respuestas
0 para la respuesta № 1Un regex parece una exageración. Si sabe que la línea solo contiene "COMx", ¿por qué no usar uno de estos métodos?
" Option 1: Start at the 4th char...
strContents = Mid(objFile.ReadLine, 4)
" Option 2: Remove "COM" from the line...
strContents = Replace(objFile.ReadLine, "COM", "")