使用十六进制格式的Delphi 6的Format()语句打印HRESULT的正确格
发布时间:2020-12-15 09:05:28 所属栏目:大数据 来源:网络整理
导读:我有一个使用DSPACK组件库的Delphi 6应用程序.只要特定的DirectShow操作失败,该库就会在调试模式下打印日志行.这是相关的源代码行: format('Error %08lX from FillBuffer!!!',[Result]) 不幸的是,这一行导致SysUtils.ConvertErrorFmt()中的EConvertError异
我有一个使用DSPACK组件库的Delphi 6应用程序.只要特定的DirectShow操作失败,该库就会在调试模式下打印日志行.这是相关的源代码行:
format('Error %08lX from FillBuffer!!!',[Result]) 不幸的是,这一行导致SysUtils.ConvertErrorFmt()中的EConvertError异常.尝试以十六进制格式正确打印HRESULT时使用的正确格式说明符是什么? 解决方法
您传递给函数的令牌(?lX)无效,要将值格式化为十六进制,您必须使用X char,并指定长度使用点后跟所需字符的计数,例如%.8X
检查此样本 format('Error %.8X from FillBuffer!!!',[Result]) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |