我正在做一个项目,我需要为设备的打印操作进行编程。它有WIN CE 6.0。我正在使用 Visual Studio 2005 (MFC)。打印机可以是任何 PCL 兼容的打印机。
目前,为了获得打印机 DC,我正在使用 CreateDC()。
hPrinterDC = CreateDC(L"PCL.DLL", L"Any Name", L"LPT1", NULL);
使用此调用我能够成功打印。在这里,我将 DEVMODE 特定的输入参数作为 NULL 传递。但是为了更好地控制这些打印操作,我需要将 DEVMODE 信息传递给 CreateDC()。
为此,我计划按照上面的说明调用 CreateDC() 以在注册表中生成 DEVMODE 特定信息。然后我可以将注册表中的 DEVMODE 数据读取到局部变量中,仅修改此变量的必要字段,并将此变量传递给 CreateDC() 以获取打印机 DC,以便进行实际打印操作。
我避免直接初始化 DEVMODE 结构,因为我没有关于 DEVMODE 的某些字段的足够信息,例如 dmDriverExtra。
我需要知道如何安全地从注册表中读取像 DEVMODE 这样的结构?任何相关的例子都会很有帮助。
亲切的问候, Aftab