質問する前に検索しましたが、自分のコードに該当するものは見つかりませんでした。また、私が試したことはコードにコメントされています。エラー 800706BE ( The remote procedure call failed ) がFor..Next
ループに表示され、そのたびにさまざまなランダム量の反復でサイクルが中断されます。私が見逃しているものとその(単純な)コードを修正する方法は?
'List All the Folders on a Computer
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
'With objWMIService.Security_
' .impersonationlevel = 3
' For I = 1 To 27
' .Privileges.Add(I)
' Next
'End With '--------------------------not help at all!
Set colFolders = objWMIService.ExecQuery("Select * from Win32_Directory")
cnt = 0
'Do Until IsObject(colFolders) '-----not help at all!
' WScript.Sleep 500
'Loop
On Error Resume Next 'enabled to get extra info from SWbemLastError
For Each objFolder In colFolders
Wscript.Echo objFolder.Name
cnt = cnt + 1
' WScript.Sleep 10 '--------------that make it worst!
Next '---------------the error appear always at this line----------
If Err Then
Wscript.Echo Err.Number, Err.Description, Err.Source
Set lastErr = CreateObject("WbemScripting.SWbemLastError")
Wscript.Echo lastErr.Operation
End If
Wscript.Echo "LastIter.: " & cnt
'-2147023170
'ExecQuery
'LastIter.: 2152 or 1592 or 1314 or 959 ... varied random
WBEMテスト:
PS私はSystem Restore
1 つの仮説をテストし、最後の Windows セキュリティ更新の数日前に復元するためにいくつかのテストを行いました。別のエラーが表示されるようになりました: 80041033 "シャットダウン中"。後で同じようにさらに混乱しUndo Last Restore
ますが、同じ新しいエラー ( Shutting down ) が引き続き表示されます。これは意味がありません。