如何动态装载VXD,就象动态装载DLL那样。(50分)

  • 主题发起人 主题发起人 qiuxueting
  • 开始时间 开始时间
Q

qiuxueting

Unregistered / Unconfirmed
GUEST, unregistred user!
我想使用smartvsd.vxd读取硬盘序号,可是需要先将之放在system/iosubsys下,然后
重启,才可用。如何动态装载VXD,就象动态装载DLL那样。
 
CreateFile('//././smartvsd.vxd',.....);
 
我就是用的CreateFile()
但必须让windows启动时装入snartvsd.vxd
我想程序需要时自己动态装入
 
我也遇见这个问题。强烈关注
 
借宝地问菜问题:*.vxd 是什么文件功能是什么?
 
我也想研究一下VXD,:)
老兄,你是如何使用这个VXD的呢?
 
vxd其实也可以动态加载的,例如quickvxd,要不调试的时候岂不是很惨?
 
:Chenlili
用那个函数加载,如何应用,能说具体一些吗
 
to Chenlili:
; ;讲一讲啦。先谢谢了啊。[:)]
 
没有人回答吗?
 
vxd有几种
有些vxd可以动态加载
在vxd里面实现动态加载的函数就行
有些vxd是不能动态加载的
必需静态加载
 
不要等了,没人回答。
难得糊涂!
 
不知道还有什么地方不对,见过NetHacker就是动态Load VxD的,我也想知道其他的方面的东东
听课~~~~~~~~
 
为什么还要用vxd呢,win2k以后就不在支持vxd了呀!

IPman的vxd就是动态加载的,你可以参考一下。
.....
; ;hVxD := CreateFile('//./VPACKET.VXD',
; ; ; ; ; ; ; ; ; ; ; GENERIC_READ or GENERIC_WRITE,
; ; ; ; ; ; ; ; ; ; ; 0,
; ; ; ; ; ; ; ; ; ; ; nil,
; ; ; ; ; ; ; ; ; ; ; OPEN_EXISTING,
; ; ; ; ; ; ; ; ; ; ; FILE_ATTRIBUTE_NORMAL or FILE_FLAG_OVERLAPPED or
; ; ; ; ; ; ; ; ; ; ; FILE_FLAG_DELETE_ON_CLOSE,
; ; ; ; ; ; ; ; ; ; ; 0);

; ; if (hVxD = INVALID_HANDLE_VALUE) then
; ; begin
; ; ; ; dwErrorCode := GetLastError();
; ; ; ; if (dwErrorCode = ERROR_NOT_SUPPORTED) then
; ; ; ; ; ; showmessage('Unable to open VxD,device does not support DeviceIOCTL')
; ; ; ; else
; ; ; ; ; ; showmessage('Unable to open VxD, Error code'+inttohex(dwErrorCode,4))
; ; end;
.......
在delphi.mychangshu.com有源程序下栽。

如果还不明白,建议你去http://www.driverdevelop.com问一下,那儿肯定有人知道。
 
接受答案了.
 
后退
顶部