• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Как Убрать Интервалы Между Строками?

  • Автор темы Kventin
  • Дата начала
K

Kventin

Подскажите, как в получаемом файле добиться, чтобы небыло межстрочных интервалов? Сделал вывод с одну строку через табуляцию-интервалы все равно остались.

Код:
Const strComputer = "."
Dim objFSO, objWMIService, colEvents, objEvent, outFile
Dim dtmStartDate, dtmEndDate, DateToCheck, fileDate
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set dtmStartDate = CreateObject("WbemScripting.SWbemDateTime")
Set dtmEndDate = CreateObject("WbemScripting.SWbemDateTime")
'change the date form "/" to "-" so it can be used in the file name
fileDate = Replace(Date - 7,"/","-")
Set outFile = objFSO.CreateTextFile("D:\" & fileDate & "-Events.txt",True)
DateToCheck = Date - 20
dtmEndDate.SetVarDate Date, True
dtmStartDate.SetVarDate DateToCheck, True

Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

Set colEvents = objWMIService.ExecQuery _
("Select * from Win32_NTLogEvent where EventCode = '20158' and TimeWritten >= '" _ 
& dtmStartDate & "' and TimeWritten < '" & dtmEndDate & "'") 

Function evtdatetime(evttime)
Dim tmGen, dtPart, tmPart
tmGen = Left(evttime, 14)
dtPart = Left(tmGen, 8)
tmPart = Right(tmGen, 6)
'evtdatetime = Mid(dtPart, 2) & "." & Right(dtPart,5, 2) & "." & Left(dtPart, 4) & " " & _  
evtdatetime = Right(dtPart, 2) & "." & Mid(dtPart, 5, 2) & "." & Left(dtPart, 4) & " " & _	 
Left(tmPart, 2) & ":" & Mid(tmPart, 3, 2) & ":" & Right(tmPart, 2)						  
End Function

For each objEvent in colEvents
outFile.WriteLine evtdatetime(objEvent.TimeWritten) & "	" & objEvent.Message
next
outFile.Close
MsgBox "Файл сохранен на диск С:/"
 
A

alex77755

Меня всегда удивляет: зачем применять "тяжёлую артилерию" FSO для создания текстового файла.
Самый примитивный метод Open For Output намного проще и понятней.
Если, конечно, это не NET.
Но по представленным огрызкам кода это не понятно:
Процедуры нет ни одной. Есть два непонятных куска кода и есть функция, которая ничего не возвращает.
Так как первая строка закомментирована, а в конце строки стоит перенос. И в итоге всё назначение закомментировано
 
H

Hralain

txtFile1 - переменная, в которую я загнал весь файл
i = 1 '
Do While i < Len(txtFile1)
intPoz1 = InStr(i, txtFile1, " " & vbCrLf) 'ищем позицию пробел + enter
If intPoz1 > 0 Then ' если нашли
i = intPoz1 ' переходим на нее
txtFile1 = Left(txtFile1, intPoz1 - 1) & Mid(txtFile1, intPoz1 + 2) ' выводим то, что до нее + что после, в следствие чего пустая строка удаляется
Else
i = Len(txtFile1)
End If
Loop
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!