Windows 2000: Interactive search (COMAPI) always fails with 0x800706D3 while AU's own background search succeeds #489
Replies: 2 comments 2 replies
|
Are you using it as a non-admin user? The logic to detect an admin user did change recently, and it’s possible it’s broken on 2000. Running as non-admin is supposed to display a logon prompt to run as an administrator, or an error page if you go directly to the website. Without those checks on our side, it’s possible this is what you get. Are there possibly some custom ACLs configured that could be denying some privileges to your user? (If you don’t know, it’s most likely not that.) Is this a plain Windows 2000 SP4 install from an original CD image, or is it possibly modified in some way? Not exactly the same error, but I noticed this which claims a known bug with 7.2.6001.xxx versions of WUA returning 800703F0 (“An attempt was made to reference a token that does not exist.” - your error is “The authentication service is unknown.”) on Server 2008 when no users are logged on. It could be related, but I’m still surprised because this has never come up before. |
|
Error 0x800706D3 is RPC_S_UNKNOWN_IF which means the COMAPI cannot talk to the Windows Update service via the expected RPC interface. Your analysis is correct -- this is a session infrastructure issue. On Windows 2000, the WUA COMAPI path expects a session model that was introduced with XP Terminal Services. The GetUserTokenFromSessionId call fails because Windows 2000 session 0 does not have the same token lookup infrastructure. The reason AU background search works is that it runs in-process with the service and does not need the COMAPI session token lookup. Only the interactive ActiveX-driven path hits this. Practical workarounds:
The Windows Installer version is indeed unrelated -- your testing confirmed that. |
Uh oh!
There was an error while loading. Please reload this page.
Environment
Summary
Every time I try to search for updates from the Legacy Update website (via "Install Updates" in Internet Explorer), it fails with error 800706D3. This happens 100% of the time, but Automatic Updates' own background/scheduled search succeeds and finds updates normally — only the interactive (COMAPI/ActiveX-driven) search path is affected.
I initially assumed this was related to Windows Installer 2.0 (since the log also shows "MSI DLL version is 2.0. Version 3.1 is required." around the same session), so I updated Windows Installer to 3.1. This had no effect on the 800706D3 error, so I don't believe it's related.
Steps to reproduce
Expected behavior
The search completes and returns available updates, as it does when Automatic Updates runs its own background search.
Actual behavior
Every COMAPI-driven search fails with the same sequence in WindowsUpdate.log:
Meanwhile, Automatic Updates' own scheduled search (not going through COMAPI) completes successfully in the same log, e.g.:
This suggests the underlying detection/download machinery works fine, but something about the interactive session-token lookup (
GetUserTokenFromSessionId) that COMAPI relies on to talk back to the website's ActiveX control is failing at the RPC interface level (0x800706D3 = RPC_S_UNKNOWN_IF, "the interface is unknown") rather than a simple permission/timeout error. My guess is this call depends on session infrastructure that doesn't exist in the same form on Windows 2000 (predates XP's Fast User Switching / Terminal Services session model), but I don't have enough visibility into the WUA client internals to confirm.Additional notes
WindowsUpdate.log
All reactions