Takže som napísal nasledujúci vbscript na prečítanie asúbor, ktorý by výstup príkazového riadku. Obsah súboru by bol jednoducho (COMx), pričom x je číslo portu príslušného zariadenia. Tento skript má prečítať tento súbor a vytiahnuť "x" a uložiť ho do nového textového súboru. Napísal som to asi pred dvoma týždňami a otestoval som to, fungovalo to. Teraz sa zdá, že bez ohľadu na to, čo robím, nemôžem vôbec pracovať. Je to tak zarážajúce, ako to fungovalo pred dvoma týždňami. Teraz to len vytvára výstupný súbor, v ktorom nie je nič. Neviem, či náhodou niečo alebo čo sa zmenilo, ale akákoľvek pomoc by bola ocenená.
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
odpovede:
0 pre odpoveď č. 1Regex vyzerá ako prehnane. Ak viete, že riadok obsahuje iba „COMx“, prečo nepoužiť jednu z týchto metód?
" Option 1: Start at the 4th char...
strContents = Mid(objFile.ReadLine, 4)
" Option 2: Remove "COM" from the line...
strContents = Replace(objFile.ReadLine, "COM", "")