小编LeO*_*ArD的帖子

如何检索DirectX 9的错误字符串

我想检索DirectX 9的错误字符串,但我可以在网上找到使用FormatMessage()和_com_error.ErrorMessage(),这两个都让我失望.

hr = g_pd3dDevice->GetRenderTargetData(...
... // the debugger tells me hr = 0x8876086c
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER |
    FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS,
    NULL, hr, 0, (LPTSTR)&lpBuf, 0, NULL))
// it returns 0 with lpBuf unallocated
Run Code Online (Sandbox Code Playgroud)

FormatMessage()失败,我再次使用GetLastError()来查看FormatMessage()失败的原因:"系统无法在%2的消息文件中找到消息号0x%1的消息文本."

_com_error.ErrorMessage()告诉我"未知错误0x8876086c"

c++ com directx error-handling winapi

9
推荐指数
1
解决办法
1万
查看次数

如何在OpenCV中使用16位灰度?

我找不到这些问题的答案:

  1. 我可以使用OpenCV显示16位灰度图片吗?我试过imshow()但OpenCV创建的窗口上什么都没有出现.

  2. 如何将16位灰度图像转换为B5G6R5图像?我应该创建什么参数cv::Mat来存储这个结构?我试过cv::cvtColor(m_cvTmp, tmp, CV_GRAY2BGR565)但这个功能一直在崩溃.关于杂项图像转换文档没有说明答案.

PS:我要处理的图像已经在内存中了.

c++ graphics opencv

6
推荐指数
1
解决办法
2万
查看次数

Graphviz [outputorder = edgesfirst]似乎不起作用

我正在可视化带有graphviz的sddp的图形。但是边缘覆盖了该节点,这很烦人。我将此属性[outputorder = edgesfirst]添加到了图形中,但它似乎不起作用。

输出: 在此处输入图片说明

资源:

digraph G {
graph [overlap=false][outputorder=edgesfirst];
0;
1;
2;
3;

.....

330;
331;
0->18 [color=red];
0->325 [style=invis];
2->3 [dir=none];

.....

331->330 [color=red];
}
Run Code Online (Sandbox Code Playgroud)

visualization graphviz

3
推荐指数
1
解决办法
705
查看次数