Я пытаюсь написать программу, которая выведет список всех установленных обновлений Windows и выведет дату самой последней установки. Я упираюсь в стену из-за формата, выводимого из запроса WMI. Мой код ниже:
Dim dates = New List(Of String)
Dim datearray = dates.ToArray()
Try
Dim searcher As New ManagementObjectSearcher( _
"root\CIMV2", _
"SELECT * FROM Win32_QuickFixEngineering")
For Each queryObj As ManagementObject In searcher.Get()
dates.Add((queryObj("InstalledOn")))
Next
Dim path As String = "C:\Users\Will\outputfile.txt"
IO.File.WriteAllLines(path, dates)
Я только пишу вывод, чтобы проверить даты, проблема, с которой я сталкиваюсь, заключается в том, что при попытке преобразовать массив в даты возникают исключения из-за того, что дата не находится в требуемом формате. Например, вывод:
12/7/2013
12/7/2013
12/7/2013
6/14/2013
10/7/2011
4/7/2011
Использование datetime.parse не соответствует требуемому формату.
Как я могу преобразовать массив, чтобы все даты были в одном формате? (и, пожалуйста, обратите внимание, что эти даты — месяц/день/год, и я действительно мог бы использовать их как день/месяц/год.
Я читал форумы и пробовал несколько разных фрагментов кода, которые я нашел, но ничего не помогло!
Просто мысль, но могу ли я что-то сделать с WQL, чтобы экспортировать только последнее обновление?
Заранее спасибо :)