能力值:
( LV13,RANK:530 )
2 楼
都出WDK 了奥~~~~
那个东西好就没有什么用了。
能力值:
( LV12,RANK:610 )
3 楼
重装一遍不行吗?
先装ddk,再装ds 3.2
能力值:
( LV2,RANK:10 )
4 楼
放弃ds 3.2吧,都已经停止开发的东西了
能力值:
( LV2,RANK:10 )
5 楼
在vc6.0或vs2005中设置好ddk路径,写代码文件
然后在ddk环境中编译,这样不行吗?
能力值:
( LV2,RANK:10 )
6 楼
编译好后在虚拟机中调试,不然蓝几次,就心疼了
能力值:
( LV12,RANK:1010 )
7 楼
停止开发 不代表不经典.
完全的DDK 和DriverStudio比就好象一个是C,一个是MFC, 后者就是方便些嘛
问题还未解决啊~~~
还望用过的大叔们指点下~
能力值:
( LV12,RANK:1010 )
8 楼
偶就是这样做的啊.
问题是装 DS 3.2的时候出现了图中的问题.
杂办?
能力值:
( LV9,RANK:460 )
9 楼
出现的安装错误是DriverStudio 3.2的一个小bug,Compuware已经给出了补丁,你可以到Google上去搜索,很容易找到。如果找不到,说一下,我会把它贴上来。另外,这个bug只是涉及到DriverStudio与Visual Studio 2005的集成问题,并不会影响你用vc6编译驱动程序。
能力值:
( LV9,RANK:460 )
10 楼
从“开始”菜单中选择“Compuware DriverStudio”,再选择“Develop”下的“DDK Build Settings”,在出现的对话框中选择相应的DDK根目录以及目标平台,然后单击对话框最下面的“Launch Program”按钮,这时会启动VC。然后再打开要创建的工程就可以了。以下是我在VC6中用Windows Server 2003 SP1 DDK选择Win32 WDM Free方式编译VdwLibs时的输出结果:
Current DDK Directory = D:\PROGRA~1\DDK\NT52R1
Building for i386
******Configuration: VdwLibs - Win32 WDM Free *************
1 file(s) copied.
C:\PROGRA~1\Compuware\DriverStudio\DriverWorks\..\Common\source\kstl.cpp
C:\PROGRA~1\Compuware\DriverStudio\DriverWorks\..\Common\source\kstllmcb.cpp
C:\PROGRA~1\Compuware\DriverStudio\DriverWorks\..\Common\source\kstlnphs.cpp
C:\PROGRA~1\Compuware\DriverStudio\DriverWorks\..\Common\source\kstlphs.cpp
C:\PROGRA~1\Compuware\DriverStudio\DriverWorks\..\Common\source\stcinit.cpp
C:\PROGRA~1\Compuware\DriverStudio\DriverWorks\..\Common\source\suballoc.cpp
6 file(s) copied.
C:\PROGRA~1\COMPUW~1\DRIVER~1\DRIVER~4\source>call D:\PROGRA~1\DDK\NT52R1\bin\setenv.bat D:\PROGRA~1\DDK\NT52R1 fre WXP
C:\PROGRA~1\COMPUW~1\DRIVER~1\DRIVER~4\source>build.exe -ceZ
BUILD: Adding /Y to COPYCMD so xcopy ops won't hang.
BUILD: Using 2 child processes
BUILD: Object root set to: ==> objfre_wxp_x86
BUILD: Compile and Link for i386
BUILD: Examining c:\progra~1\compuw~1\driver~1\driver~4\source directory for files to compile.
c:\progra~1\compuw~1\driver~1\driver~4\source
BUILD: Compiling (NoSync) c:\progra~1\compuw~1\driver~1\driver~4\source directory
1>Compiling - cpprt.cpp for i386
1>Compiling - stcinit.cpp for i386
1>Compiling - dwcontrl.cpp for i386
1>Compiling - kaddress.cpp for i386
1>Compiling - kchecker.cpp for i386
1>Compiling - kdevice.cpp for i386
1>Compiling - kerrlog.cpp for i386
1>Compiling - kfifo.cpp for i386
1>Compiling - kfile.cpp for i386
1>Compiling - kirp.cpp for i386
1>Compiling - kpcicfg.cpp for i386
1>Compiling - kintrupt.cpp for i386
1>Compiling - klist.cpp for i386
1>Compiling - kadapter.cpp for i386
1>Compiling - klower.cpp for i386
1>Compiling - kpnpdev.cpp for i386
1>Compiling - kpnplow.cpp for i386
1>Compiling - kquery.cpp for i386
1>Compiling - kregkey.cpp for i386
1>Compiling - kresreq.cpp for i386
1>Compiling - generating code... for i386
1>Compiling - kustring.cpp for i386
1>Compiling - ksfifo.cpp for i386
1>Compiling - kspin.cpp for i386
1>Compiling - kunitnam.cpp for i386
1>Compiling - kdevque.cpp for i386
1>Compiling - ksysthrd.cpp for i386
1>Compiling - ktimer.cpp for i386
1>Compiling - kevent.cpp for i386
1>Compiling - kmutex.cpp for i386
1>Compiling - ksemaphr.cpp for i386
1>Compiling - kdmqcsq.cpp for i386
1>Compiling - kdmqex.cpp for i386
1>Compiling - kdmaxfer.cpp for i386
1>Compiling - ktrace.cpp for i386
1>Compiling - kusb.cpp for i386
1>Compiling - khidaux.cpp for i386
1>Compiling - getnames.cpp for i386
1>Compiling - kvxdintf.cpp for i386
1>Compiling - kstl.cpp for i386
1>Compiling - kstllmcb.cpp for i386
1>Compiling - generating code... for i386
1>Compiling - kstlphs.cpp for i386
1>Compiling - kstlnphs.cpp for i386
1>Compiling - kstream.cpp for i386
1>Compiling - kstradpt.cpp for i386
1>Compiling - util.cpp for i386
1>Compiling - suballoc.cpp for i386
1>Compiling - k1394.cpp for i386
1>Compiling - k1394async.cpp for i386
1>Compiling - k1394isoc.cpp for i386
1>Compiling - kwmi.cpp for i386
1>Compiling - kwmistr.cpp for i386
1>Compiling - ksminidriver.cpp for i386
1>Compiling - kstdwmi.cpp for i386
1>Compiling - kbus.cpp for i386
1>Compiling - kphysdev.cpp for i386
1>Compiling - generating code... for i386
BUILD: Compiling c:\progra~1\compuw~1\driver~1\driver~4\source directory
100>Building Library - c:\progra~1\compuware\driverstudio\driverworks\lib\i386\vdw_wdm.lib for i386
BUILD: Done
56 files compiled
1 library built
1 file(s) copied.
BASEDIR=D:\PROGRA~1\DDK\NT52R1
Tool returned code: 0 最后产生的文件保存的位置在这个工程的目录中的workspace.txt中有说明。
能力值:
( LV12,RANK:1010 )
11 楼
呵呵,偶是按照你的步骤来的.
不过没有这句:
Current DDK Directory = D:\PROGRA~1\DDK\NT52R1
偶回来再试下, 先谢谢你啦
能力值:
( LV9,RANK:460 )
12 楼
这个目录是我的DDK的根目录
能力值:
( LV2,RANK:10 )
13 楼
有些文件需要安装c盘才可以使用的。。
这是我的经验,还有不行,到驱网上的问一问上面的大佬吗?
上面也有一些这方面的资料,我曾近看过你所说的情况。
能力值:
( LV2,RANK:10 )
14 楼
找武安河的书好好看一看
能力值:
( LV12,RANK:1010 )
15 楼
原来要用VS 2005来编译,
偶在VS 2005 下编译
VdwLibs.dsw 时候没有其他错误, 就一个关于
#if _WIN32_WINNT >= 0x0501
的错误
这个是什么问题啊, 查了半天不知道原因.
这句是判断机器是否为 WINDOWS XP 以上版本, 偶机器就是 XP SP2 的啊
上传的附件:
能力值:
( LV9,RANK:460 )
16 楼
用我说的方法无论是VC6、VC7还是VC8都可以,在我的机器上并没有出现任何问题(警告和错误)。前面是我在VC6中编译的结果,下面是我在VC8中的结果:
------ Using D:\PROGRA~1\DDK\NT52R1 DDK
1>------ Build started: Project: VdwLibs, Configuration: WDM Free Win32 ------
1>Compiling...
1>suballoc.cpp
1>stcinit.cpp
1>kstlphs.cpp
1>kstlnphs.cpp
1>kstllmcb.cpp
1>kstl.cpp
1>util.cpp
1>kwmistr.cpp
1>kwmi.cpp
1>kvxdintf.cpp
1>kustring.cpp
1>kusb.cpp
1>kunitnam.cpp
1>ktrace.cpp
1>ktimer.cpp
1>ksysthrd.cpp
1>Kstrmdrv.cpp
1>Kstream.cpp
1>Kstradpt.cpp
1>kstdwmi.cpp
1>Generating Code...
1>Compiling...
1>kspin.cpp
1>KsMiniDriver.cpp
1>ksfifo.cpp
1>ksemaphr.cpp
1>kresreq.cpp
1>kregkey.cpp
1>kquery.cpp
1>kpnplow.cpp
1>kpnpdev.cpp
1>kphysdev.cpp
1>kpcicfg.cpp
1>kmutex.cpp
1>klower.cpp
1>klist.cpp
1>kirp.cpp
1>kintrupt.cpp
1>khidaux.cpp
1>kfile.cpp
1>kfifo.cpp
1>kexception.cpp
1>Generating Code...
1>Compiling...
1>kevent.cpp
1>kerrlog.cpp
1>kdmqex.cpp
1>kdmqcsq.cpp
1>kdmaxfer.cpp
1>kdevque.cpp
1>kdevice.cpp
1>kchecker.cpp
1>kbus.cpp
1>kaddress.cpp
1>kadapter.cpp
1>K1394Isoc.cpp
1>k1394Async.cpp
1>k1394.cpp
1>getnames.cpp
1>dwcontrl.cpp
1>cpprt.cpp
1>Generating Code...
1>Creating library...
1>Build Environment Variables
1>BASEDIR=D:\PROGRA~1\DDK\NT52R1
1>Build log was saved at "file://c:\Program Files\Compuware\DriverStudio\DriverWorks\source\obj\i386\wdmfree\BuildLog.htm"
1>VdwLibs - 0 error(s), 0 warning(s)
========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ========== 下面是在VC7中的结果:
------ Build started: Project: VdwLibs, Configuration: Win32 WDM Free Win32 ------
Compiling with D:\PROGRA~1\DDK\NT52R1 DDK x86 compiler...
suballoc.cpp
stcinit.cpp
kstlphs.cpp
kstlnphs.cpp
kstllmcb.cpp
kstl.cpp
util.cpp
kwmistr.cpp
kwmi.cpp
kvxdintf.cpp
kustring.cpp
kusb.cpp
kunitnam.cpp
ktrace.cpp
ktimer.cpp
ksysthrd.cpp
Kstrmdrv.cpp
Kstream.cpp
Kstradpt.cpp
kstdwmi.cpp
Generating Code...
Compiling...
kspin.cpp
KsMiniDriver.cpp
ksfifo.cpp
ksemaphr.cpp
kresreq.cpp
kregkey.cpp
kquery.cpp
kpnplow.cpp
kpnpdev.cpp
kphysdev.cpp
kpcicfg.cpp
kmutex.cpp
klower.cpp
klist.cpp
kirp.cpp
kintrupt.cpp
khidaux.cpp
kfile.cpp
kfifo.cpp
kexception.cpp
Generating Code...
Compiling...
kevent.cpp
kerrlog.cpp
kdmqex.cpp
kdmqcsq.cpp
kdmaxfer.cpp
kdevque.cpp
kdevice.cpp
kchecker.cpp
kbus.cpp
kaddress.cpp
kadapter.cpp
K1394Isoc.cpp
k1394Async.cpp
k1394.cpp
getnames.cpp
dwcontrl.cpp
cpprt.cpp
Generating Code...
Creating library...
Build Environment Variables
BASEDIR=D:\PROGRA~1\DDK\NT52R1
Build log was saved at "file://c:\Program Files\Compuware\DriverStudio\DriverWorks\source\obj\i386\wdmfree\BuildLog.htm"
VdwLibs - 0 error(s), 0 warning(s) ---------------------- Done ----------------------
Build: 1 succeeded, 0 failed, 0 skipped
能力值:
( LV12,RANK:1010 )
17 楼
汗,偶现在用VS 2005 可以编译, 所以不考虑编译器的问题了.
现在关键是 DDK中的一个头文件:
#if _WIN32_WINNT >= 0x0501
编译出问题,不知道大叔有没有碰到过, 和版本相关联,难道是DDK的毛病吗?
能力值:
( LV9,RANK:460 )
18 楼
那个宏定义确实是用来判断操作系统版本的,但是你的机器安装的操作系统的版本与要编译生成的驱动程序要运行的操作系统的版本完全是两码事。你在32位的Windows上完全可以编译生成在64位Windows上运行的程序,这个宏是可以自己定义的。按我前面说的方法,并不会出现任何问题,不知你到底是如何操作的???
能力值:
( LV12,RANK:1010 )
19 楼
完全按照你提示的步骤来的啊:
1.
DDK目录一打开就有,默认设置
2.
点
Laungh Program 后系统启动了VS 2005,偶就打开了VdwLibs.sln 开始编译.
选择的是WDM FREE
于是就出现了错误:
#if _WIN32_WINNT >= 0x0501
上传的附件:
能力值:
( LV9,RANK:460 )
20 楼
我用的是Windows Server 2003 SP1 DDK,等我安装XP SP1 DDK试一下。我还没有,还得下载。
能力值:
( LV9,RANK:460 )
21 楼
Windows XP SP1 DDK真是难下载。花了我好长时间才下载下来。当我将它安装上之后进行测试,结果与前面一样,并没有任何错误。真不知道你是如何安装与设置的???
以下是结果:
------ Using D:\PROGRA~1\DDK\NT51R1 DDK
1>------ Build started: Project: VdwLibs, Configuration: WDM Free Win32 ------
1>Compiling...
1>suballoc.cpp
1>stcinit.cpp
1>kstlphs.cpp
1>kstlnphs.cpp
1>kstllmcb.cpp
1>kstl.cpp
1>util.cpp
1>kwmistr.cpp
1>kwmi.cpp
1>kvxdintf.cpp
1>kustring.cpp
1>kusb.cpp
1>kunitnam.cpp
1>ktrace.cpp
1>ktimer.cpp
1>ksysthrd.cpp
1>Kstrmdrv.cpp
1>Kstream.cpp
1>Kstradpt.cpp
1>kstdwmi.cpp
1>Generating Code...
1>Compiling...
1>kspin.cpp
1>KsMiniDriver.cpp
1>ksfifo.cpp
1>ksemaphr.cpp
1>kresreq.cpp
1>kregkey.cpp
1>kquery.cpp
1>kpnplow.cpp
1>kpnpdev.cpp
1>kphysdev.cpp
1>kpcicfg.cpp
1>kmutex.cpp
1>klower.cpp
1>klist.cpp
1>kirp.cpp
1>kintrupt.cpp
1>khidaux.cpp
1>kfile.cpp
1>kfifo.cpp
1>kexception.cpp
1>Generating Code...
1>Compiling...
1>kevent.cpp
1>kerrlog.cpp
1>kdmqex.cpp
1>kdmqcsq.cpp
1>kdmaxfer.cpp
1>kdevque.cpp
1>kdevice.cpp
1>kchecker.cpp
1>kbus.cpp
1>kaddress.cpp
1>kadapter.cpp
1>K1394Isoc.cpp
1>k1394Async.cpp
1>k1394.cpp
1>getnames.cpp
1>dwcontrl.cpp
1>cpprt.cpp
1>Generating Code...
1>Creating library...
1>Build Environment Variables
1>BASEDIR=D:\PROGRA~1\DDK\NT51R1
1>Build log was saved at "file://c:\Program Files\Compuware\DriverStudio\DriverWorks\source\obj\i386\wdmfree\BuildLog.htm"
1>VdwLibs - 0 error(s), 0 warning(s)
========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
能力值:
( LV12,RANK:1010 )
22 楼
哈哈,难道是人品问题
我继续琢磨~~~
能力值:
( LV2,RANK:10 )
23 楼
按照武安河的WDM设备驱动程序开发安装,加载库后,Rebuild All ,编译框出现
Deleting intermediate files and output files for project 'NdisWdm - Win32 NDIS WDM Checked'.
Deleting intermediate files and output files for project 'NdisWdm - Win32 NDIS WDM Free'.
Deleting intermediate files and output files for project 'NdisWdm - Win32 IA64 Free'.
Deleting intermediate files and output files for project 'NdisWdm - Win32 IA64 Checked'.
Deleting intermediate files and output files for project 'VdwLibs - Win32 NT4 Free'.
C:\Program Files\NuMega\DriverStudio\DriverWorks\include\kndisvdw.h(42): Could not find the file kndiscpp.h.
C:\Program Files\NuMega\DriverStudio\DriverWorks\include\kndisvdw.h(71): Could not find the file KNdisSpinLock.h.
C:\Program Files\NuMega\DriverStudio\DriverWorks\include\kndisvdw.h(73): Could not find the file KNdisList.h.
C:\Program Files\NuMega\DriverStudio\DriverWorks\include\k1394.h(31): Could not find the file 1394.h.
然后我去打光盘自带的例子,点击后缀名.dsw的文件,打不开例子程序
自己按书上步骤编程时,编译提示打不开wdm.h
是不是安装出错了啊
请大侠们指点
能力值:
( LV9,RANK:460 )
24 楼
这主要是环境变量没有设置好