CreateDC失败,错误代码为0

时间:2009-11-19 10:07:25

标签: windows winapi

我正在使用CreateDC打印,传入一个有效的DEVMODE结构并返回NULL,表示错误,但GetLastError返回0.

m_hDC = ::CreateDC(L"WINSPOOL", PrinterName, NULL, pDevMode);
if (m_hDC == NULL)
{
 throw Exception(GetLastError(), __LINE__, _T(__FILE__));
}

除了一个想法之外,这对我的所有客户都有效吗?

2 个答案:

答案 0 :(得分:2)

这对于thunking假脱机程序api来说是一个问题。

该软件是在64位系统上运行的32位Windows服务。

似乎只有一个用户/会话可以从32位进程一次打印,下一个用户必须等待splwow64.exe超时(或杀死它)才能打印。

它包含在MS的technote中。

答案 1 :(得分:0)

你确定pDevMode有效吗?如果DEVMODE是问题,你可以尝试在这里使用NULL指针。