3

質問する前に検索しましたが、自分のコードに該当するものは見つかりませんでした。また、私が試したことはコードにコメントされています。エラー 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 Restore1 つの仮説をテストし、最後の Windows セキュリティ更新の数日前に復元するためにいくつかのテストを行いました。別のエラーが表示されるようになりました: 80041033 "シャットダウン中"。後で同じようにさらに混乱しUndo Last Restoreますが、同じ新しいエラー ( Shutting down ) が引き続き表示されます。これは意味がありません。

4

1 に答える 1

0

sfc /scannow はもう試しましたか? これがどの Windows プラットフォームに関係するかについての言及は見当たりませんでした。XP、Vista、7、8.x、10 プレビュー? 32ビット、64ビット?

于 2015-03-12T16:38:45.763 に答える