← 返回目录

关于打印机驱动程序32bit to 64bit移植的一些总结

发布时间: 2007-08-19 15:22:00
浏览量: 1899
收藏数: 1
标签: 64bit, dll, user, 工作, windows, 框架
1.打印驱动可有user mode 或kernel mode两种模式,当然或者混合.2.kernel mode请指定为生成的类型是gid driver.3.user mode以实现约定函数的两个DLL提供,一个提供ddi, 另一个提供统一的用户配置界面.4.安装dll的inf和其它的inf有些不一样,请用infgate.exe进行检测,infchk.exe会提示你这样做.    d

1.打印驱动可有user mode 或kernel mode两种模式,当然或者混合.

2.kernel mode请指定为生成的类型是gid driver.

3.user mode以实现约定函数的两个DLL提供,一个提供ddi, 另一个提供统一的用户配置界面.

4.安装dll的inf和其它的inf有些不一样,请用infgate.exe进行检测,infchk.exe会提示你这样做.

   datafile必须存在.

5.在系统调用drvQueryinfo时,返回的cbBuffer的直是TRUE代表是user mode, FALSE表示kernel mode.

6.写好你这两文件,写好你的inf就可以安装了。

7.vista 和xp ,32 bit或64bit并没有太多不同,vista 在用户模式下的打印流程有少许变化,但是对于我们来说是透明的,可以忽略. 32bit 的user mode驱动程序无法在64 bit的windows 上安装成功.  是因为64 bit的进程无法调用32bit的dll. (真的这样吗? 不敢肯定,因为32bit的程序应该是可以使用64bit的user mode的打印机驱动的,为何微软件不顺便完成从64 to 32bit的工作?).

8.我正在使用com和idl把lp900的32bit的驱动移植到vista64bit的系统上。完成一个框架,还有好多工作未做。跨进程的参数的调整有很多麻烦事, 不好至少在vista 64bit上可以使用32bit的进程装载lp900原来的32bit dll,事情还是可行的。完成后,再作一些总结.

 更详细的情况请参阅 最新的WDK, 现在申请成为live connect会员登录就可以下载了。