我正在编写一个应用程序更新程序,它使用后台智能下载服务工具将安装包从我们的分发网站拉到用户的 PC 上。
现在或多或少一切正常,但我在让应用程序对所有可恢复的错误做出良好反应时遇到了一些问题。具体来说,我希望应用程序能够正确处理代理身份验证的情况。
在 HTTP 中,这很简单:发出请求,获取“407”HTTP 响应代码,提示输入用户名/密码并重复,直到您通过或用户按下“取消”。
有了BITS,事情就没有那么简单了。我没有收到 HTTP 状态代码。我得到了几个代码:上下文(在我的情况下应该是 BG_ERROR_CONTEXT_REMOTE_FILE)和一个应该取决于上下文的“ErrorCode”。
如果我通过 GetErrorDescription 请求错误的文本描述,我会得到正确的“407 代理身份验证要求”文本。但我的错误代码是 0x80190197,这与 407 相去甚远。
那么,有谁知道我在哪里可以获得 BITS 错误代码的完整列表?如果做不到这一点,最常见错误的部分列表会很好。