我正在开发一个 .NET 应用程序来控制 DataCard 桌面卡打印机,但我偶然发现了一个问题。为了执行磁条和芯片编码,我必须调用本机打印机 API dll 中的函数来启用打印机交互模式。
我设法创建了 P/Invoke 代码来调用这个本机函数。但问题是该方法将打印机设备上下文句柄作为参数,并且必须在调用 Gdi32 StartDoc 函数之前调用。
在 .NET 打印 API 中,我确实可以从 Graphics 对象访问 hDC。但据我所知,Graphics 对象仅在调用 StartDoc 函数后可用。
所以我的问题是,是否有人知道在调用 StartDoc 之前检索上下文的方法?