20楼#
发布于:2001-08-29 09:46
不知道,你的错误提示是什么。所以不太好回答。
我说说关于编译环境的问题。 由于我编写过一些dos 程序,和 unix 的程序, 所以对命令行,编译有点了解。 我记得从 bc31 开始编写程序,就不需要使用 make 文件 和命令行编译,而是使用集成开发环境,你只需要简单的 选几下就可以编译程序。导致大部分程序员对,编译环境 不太了解,其实一般的应用程序也不需要了解。 而微软在提供 驱动程序编程的时候提供的库文件,和头文件 与 sdk 不一样。由于当前的主流开发工具都是使用sdk 的库文件和头文件,所以他们的却省配置都不能编译驱动程序。 由于上述原因导致,许多程序员开始开发驱动程序的时候,觉得 很麻烦,很困难。 只要大家知道编译程序的原理,和灵活的运用他,那么编译驱动程序 其实,很简单。 其实编写驱动程序的关键是需要大家对编写 windows 下的 批处理文件 或 nuix 的 shell 脚本的编写 有一定的了解。 在编译一个程序的时候,需要的东西是: 1、编译程序,连接程序...等可执行文件。 需要程序员设置路径,让你能访问所有的可执行文件。 有时驱动程序需要sdk 的原因是,需要sdk中的资源编译程序。 但是在 ddk 中有时也包含这个程序。不过你需要设置一下路径 在98 下是 c:\98ddk\bin\win98。所以一般情况下编写驱动程序 不需要sdk 。 我没有使用过 nt4 的ddk 所以对 他的是否需要sdk 不太清楚。 据说 nt4 ddk 在设置编译环境的时候,以读注册表来判断sdk 是否存在。来确定需要的sdk 可执行文件是否存在。而能否编译 驱动程序。请高手确定。 2、各种头文件,库文件 同样需要设置路径,使你的编译程序能够找到他。 只要满足上述两个条件,就因该能顺利的编译一个驱动程序。 例子:在 vc 下编译驱动程序。 1、ddk, vc 安装完毕。 2、在 vc 的 options -- Directories include files -- 中添加你的 ddk 中的 inc 目录,和他下面的所有子目录。 library files -- 中添加你的 ddk 中的 lib(98), libfre(nt/2k), libch(nt/2k) 和他下面的所有子目录。 executable files -- 中添加你的 ddk 中的 bin 目录,和他下面的所有子目录。 3、创建一个 makefile 的工程。把你的所有程序添加进去。 包括编译你的驱动程序的 makefile 文件 在 project setting (alt+f7) 中 General -- build command line 中 输入 mk.bat(98), mk.cmd(nt/2k) General -- output file name 中 输入 可以带路径的 驱动程序名字。 编译 vxd : 的 mk.bat @echo off echo Author : Qian echo Create Data : 2000.7.1 echo Function : start ddk environment and build vxd file echo on rem 调用 ddk 的初始化环境的 批处理文件 call c:\98ddk\bin\setenv.bat c:\98ddk checked rem 转到你的驱动程序目录 d: cd \work\qian\vxd rem 编译驱动程序 build -b -w -nmake /a 编译 vxd : 的 mk.cmd @echo off echo Author : Qian echo Create Data : 2001.8.7 echo Function : start ddk environment and build Wdm file echo on rem 调用 ddk 的初始化环境的 批处理文件 call c:\NTDDK\bin\setenv.bat c:\NTDDK checked rem 转到你的驱动程序目录 d: cd \Work\Qian\Wdm\test rem 编译驱动程序 build -b -w -nmake /a 按 f7 便可以生成驱动程序了。 我觉得还是没说太明白,如有疑问, 来 mail: Asm386@sina.com or Asm386@sohu.com |
|
|
21楼#
发布于:2001-08-29 18:40
[QUOTE]原本由 发表
[B]连基本编程环境,自己都配置不好,还想学编写驱动程序? 配置这些东西,应该不需要别人指导。 如果不是请考虑改行用 vb 或 delphi 编写应用程序吧。 真的,不是什么人都可以,编写驱动程序的。 [/B][/QUOTE] 这位" "仁兄为何连姓名和出生日期都不敢留,不敢想象他怎么能有诚意和大家交流。 |
|
22楼#
发布于:2001-08-29 22:40
水平很高嘛。
看样子,是一个一直由鲜花和掌声围绕的人。受不得一点挫折。 别人的一点严厉的忠告,就这么大火气。 不过,不会因为你了说什么,驱动程序的编写就变成 像 vb,delphi 那样拖几个控件,使用 vc 向导就能做出来。 我还是重申我的观点: 驱动程序的编写是很困难的,是有一定技术含量的。 不是任何程序员都能做的。 如果一些小问题自己不能独立解决,还有后面的大问题怎么办。 |
|
|
23楼#
发布于:2001-09-05 22:15
vxd123,你现在可满意了?这么多人回你的帖子 ……
|
|
上一页
下一页