/ / VBA GetObject winmgmts nefunguje po aktualizácii Windows - excel, vba, excel-vba, wmi

VBA GetObject winmgmts nefunguje po aktualizácii systému Windows - excel, vba, excel-vba, wmi

Používam program Excel VBA na prihlásenie do počítača, odhlásenie z denníka udalostí. Program fungoval až do aktualizácie systému Windows minulý týždeň.

Po ladení som zistila GetObject funkcia nefungovala.

Sub get_log_time()
On Error GoTo ErrorHandler

"strComputer = ComputerName
strComputer = "."

Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\" & strComputer & "rootcimv2")
Set colLoggedEvents = objWMIService.ExecQuery("Select * from Win32_NTLogEvent Where Logfile = "System" and  (EventCode = "7001" or  EventCode = "7002")")

ErrorHandler:
If Err.Number <> 0 Then
Msg = "Error # " & Str(Err.Number) & " was generated by " _
& Err.Source & Chr(13) & "Error Line: " & Erl & Chr(13) & Err.Description
MsgBox Msg, , "Error", Err.HelpFile, Err.HelpContext
End If
Resume Next
End Sub

Chybové hlásenie bolo: "Chyba # -2147221020 bola vygenerovaná programom VBAProject." Chyba riadku: 0. Chyba automatizácie: Neplatná syntax ".

Nevedel som, prečo sa to stane a ako to napraviť.

Ďalšie informácie:

  • Používam Windows 10, Excel 2016 MSO (16.0.4549.1000) 32 bitov

  • Zmenil som kód na neskoré viazanie, ale stále to nefunguje.

  • Nastavenie referencie: Objektová knižnica Microsoft Excel 16.0, knižnica objektov Microsoft Office 16.0

odpovede:

3 pre odpoveď č. 1

Rovnaký problém tu, len s MS Access 2016 32 Bit. Skúšané aj v slove. Zdá sa, že ovplyvňujú všetky kancelárske aplikácie. Pracujem v kancelárii 32 Bit v systéme Windows 10 64 Bit.

Dúfam, že niekto môže zistiť, čo sa tu presne stalo. Tento kód fungoval v poriadku.

EDIT: Zdá sa, že vinník je aktualizovaný KB4011051, po odinštalovaní chyby zmizne. Pozerám sa na to, aby som zistil, či dokážem zistiť, či ide o návrh alebo chybu.