问题标签 [hresult]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 在 Microsoft javascript 中,是否可以获得来自 HRESULT 的错误的文本描述?
我知道 Microsoft javascript 中的Error
对象http://msdn.microsoft.com/en-us/library/dww52sbt。
一些错误来自一个HRESULT
并且它们具有有效的number
属性(例如 -2147023570 映射到 0x8007052E,参见例如 Eric Lippert 的“理解 HRESULTS” http://blogs.msdn.com/b/ericlippert/archive/2003 /10/22/53267.aspx)但message
属性(或description
属性)为空(在我的示例中,文本为“登录失败:未知用户名或密码错误。”)
我可以将FormatMessage
调用(或_com_error::ErrorMessage
)包装在 COM 对象中,然后从我的脚本中调用它(它是cscript
从命令行启动的脚本),但我想知道是否可以在没有外部组件的情况下获取文本描述但仅依赖于“标准”Windows 安装。
com - “此对象未完全初始化”的正确 HRESULT
我正在编写一个 COM 对象,该对象提供对必须显式连接才能成功调用的服务的访问。
是否有通用HRESULT
代码描述被调用对象处于未准备好处理调用的状态,理想情况下暗示这是调用者的错?
目前我正在使用E_FAIL
,这对我的口味来说太通用了;OLE_E_BLANK
可能是一个选项,但这不是 OLE 对象,我宁愿不返回令人困惑的错误代码。
com - “无效参数错误。0x80030057 (STG_E_INVALIDPARAMETER)”通常是什么意思?
我遇到了 COM 错误:
无效参数错误。HRESULT 0x80030057 (STG_E_INVALIDPARAMETER)
在处理名为 Aspose 的 Excel 互操作组件时,无法弄清楚打开 Excel 文件时出现此错误的原因。我在 Stack Overflow 上也找不到任何东西,所以必须问:
来自某些黑盒 COM 组件的此错误(在任何打印表示中)的最常见原因是什么?
当 SO 允许时,我还将发布导致我的错误的原因!
delphi - 如何在捕获过滤器的 DirectShow put_Enable 调用期间调试未指定的错误 ($80004005)?
我有一个使用 DSPACK 组件库用 Delphi 6 编写的 DirectShow 应用程序。我在启用过滤器上的输入行时遇到了一个奇怪的问题。我搜索引脚,直到找到输入线,在本例中名为“麦克风”,并在过滤器图处于活动状态时对其调用 put_Enable(true)。当我这样做时,我得到一个 $80004005 的“未指定错误”作为 HRESULT。
在启用输入线之前,我正在为过滤器设置输出音频媒体类型,但有些东西无法正常工作。我用来创建应用程序的原始 DirectShow 示例运行良好。我相信我正在按照完全相同的步骤构建我的过滤器图,当然我可能错过了一些东西。有人对我可以尝试解决此问题的事情有任何提示或想法吗?下面的代码片段部分显示了我正在做的事情,但不是所有导致它的步骤,因为它们非常冗长。我用于测试的捕获设备是一个 VOIP 耳机,带有一条名为“麦克风”的输入线。
delphi - 当我调用 IMediaControlRun 时,如何确定 DirectShow 过滤器图中的哪个过滤器失败?
我有一个使用 DSPACK 组件库的 Delphi 6 应用程序,它构建一个过滤器图然后运行它。当我使用 cePlay 控制事件状态运行过滤器图时,我通过从 IMediaControl.Run() 返回失败的 HRESULT 收到错误。我知道我可以使用 HRESULT 错误代码来猜测哪个过滤器失败了,但我想要一个更好的方法。当 IMediaControl.Run(csPlay)通过 DirectShow 调用或调用序列返回失败的 HRESULT 代码时,有没有办法找出哪个过滤器触发了失败?
c# - 是什么导致 CORDBG_E_CLASS_NOT_LOADED (HRESULT: 0x80131303)
在尝试调试应用程序时,我一直注意到我的两个数组和一个列表似乎很神秘......不在那里。为此给出的错误(在暂停应用程序并查看我的编译器的变量列表时)是“未加载类 HRESULT:0x80131303”。
谷歌搜索后,我发现那个特定的 HRESULT 被命名为“CORDBG_E_CLASS_NOT_LOADED”,但是我没有发现它的可能原因,或者如何解决它。
我通常会在此处粘贴相关代码,但据我所知,此错误直接发生在受影响的数组和列表的声明中。
这里有人可以帮忙吗?
delphi - 使用 Delphi 6 的 Format() 语句以十六进制格式打印 HRESULT 的正确格式说明符?
我有一个使用 DSPACK 组件库的 Delphi 6 应用程序。只要特定 DirectShow 操作失败,该库就会在调试模式下打印一条日志行。这是相关的源代码行:
不幸的是,这一行会导致 SysUtils.ConvertErrorFmt() 中出现 EConvertError 异常。尝试以十六进制格式正确打印 HRESULT 时使用的正确格式说明符是什么?
asp.net - Microsoft.Office.Interop.Excel 不适用于 64 位
我在 MS Visual Web Developer 2008 Express Ed 上开发时遇到了问题。在 Windows7 64 位操作系统上开发 ASP.NET C#。
我正在尝试打开一个 Excel 文档,但它给了我Old format or invalid type library. (Exception from HRESULT: 0x80028018 (TYPE_E_INVDATAREAD))
我确实为所有处理器(任何 CPU、x64、x86)配置了构建,但它不起作用。我在互联网上搜索了答案,但找不到如何处理它。
奇怪的是,当我在 Microsoft Visual C# 2010 Express 上开发时,相同的代码在同一系统上运行!怎么会?后面工作的不是同一个dll吗?
我是否需要更改该 COM dll 才能在 x64 系统上运行?
请帮帮我,我该怎么办?
我的代码是:
xna - XNA 3.1 在清除之前保留深度缓冲区
我试图通过在切换渲染目标之前从深度缓冲区复制 IDirect3DSurface9 来解决 XNA 3.1 在切换渲染目标时自动清除深度缓冲区的问题,然后在稍后恢复深度缓冲区。
在代码中,getDepthBuffer 方法是一个指向 IDirect3DDevice9 GetDepthStencilBuffer 函数的指针。指向该方法的指针似乎是正确的,但是当我尝试获取 IDirect3DSurface9 指针时,它返回异常(0x8876086C - D3DERR_INVALIDCALL)。surfacePtr 指针最终指向 0x00000000。
关于为什么它不起作用的任何想法?以及如何解决它的任何想法?
继承人的代码:
.net - 验证时出错。HRESULT = '8000000A'
在自动构建上使用 devenv 时,我已经收到此错误一段时间了。我浏览了我能找到的每个网站,通常的答案提到刷新依赖项(我相信它可以修复手动部署,但不能自动部署)并从项目中删除源代码控制编码,这对我没有帮助。
每次构建时都不会出现该错误,但每次在不同的部署项目上似乎都是随机的。
有没有人对为什么会发生此错误以及如何修复它有任何建议?