zhangyl
驱动牛犊
驱动牛犊
  • 注册日期2001-07-18
  • 最后登录2009-03-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1721回复:15

哪位老兄用过TDI? 如果有source code就太好了!

楼主#
更多 发布于:2002-06-18 09:12
我给分,倾我所有。。。。
签名是什么?
fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
沙发#
发布于:2002-06-19 12:33
用TDI什么?
fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
板凳#
发布于:2002-06-19 12:36
是不是想Call TDI的Function?
zhangyl
驱动牛犊
驱动牛犊
  • 注册日期2001-07-18
  • 最后登录2009-03-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-06-19 15:34
没错,就是想Call TDI的Function,最好有一个Server和一个Client的例子,谢谢!!!
签名是什么?
zsb9527
驱动小牛
驱动小牛
  • 注册日期2002-05-31
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-06-19 21:11
等着我可以给你。
小子,从今天开始,你就是华府的低等下人,9527就是你的终身代号。 [img]http://www.driverdevelop.com/forum/upload/zsb9527/2002-06-25_6.jpg[/img]
zsb9527
驱动小牛
驱动小牛
  • 注册日期2002-05-31
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2002-06-19 22:01

你最好去下一个PCAUSA看一下,里面有Server和Client的例子。

[编辑 -  5/20/03 by  zsb9527]
小子,从今天开始,你就是华府的低等下人,9527就是你的终身代号。 [img]http://www.driverdevelop.com/forum/upload/zsb9527/2002-06-25_6.jpg[/img]
zhangyl
驱动牛犊
驱动牛犊
  • 注册日期2001-07-18
  • 最后登录2009-03-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2002-06-20 09:20

谢谢zsb9527!

这个是NT下的吧? 在9x下可以用吗?

怎么给分呢?我还没有找到给分操作的方法
签名是什么?
zsb9527
驱动小牛
驱动小牛
  • 注册日期2002-05-31
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2002-06-20 11:31
在9x下肯定是不能用的。

你看一下PCAUSA,里面好像有9x下的例子。
小子,从今天开始,你就是华府的低等下人,9527就是你的终身代号。 [img]http://www.driverdevelop.com/forum/upload/zsb9527/2002-06-25_6.jpg[/img]
CINDS
驱动牛犊
驱动牛犊
  • 注册日期2001-03-26
  • 最后登录2005-08-11
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2002-06-25 17:04
PCAUSA 有win9x的例子吗,没找到啊?
◆与你到永久
zsb9527
驱动小牛
驱动小牛
  • 注册日期2002-05-31
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2002-06-25 18:45
 
PCAUSA 有win9x的例子吗,没找到啊?

9x下的例子是Ndis的
小子,从今天开始,你就是华府的低等下人,9527就是你的终身代号。 [img]http://www.driverdevelop.com/forum/upload/zsb9527/2002-06-25_6.jpg[/img]
CINDS
驱动牛犊
驱动牛犊
  • 注册日期2001-03-26
  • 最后登录2005-08-11
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2002-06-26 11:40
能找到9x下关于TDI的调用例子吗?
就是 TdiSendDatagramEntry(),我一运行就完蛋(VXD)。

◆与你到永久
zhangyl
驱动牛犊
驱动牛犊
  • 注册日期2001-07-18
  • 最后登录2009-03-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2002-06-27 10:27
9x下是没有例子的,我现在碰到最讨厌的问题,如下:


@@VTDI_Get_Version equ 004880000h
@@VTDI_Get_Info equ 004880008h

VxD_IDATA_SEG
TCPName     db     \'MSTCP\', 0
VxD_IDATA_ENDS

VxD_LOCKED_CODE_SEG

public TdiGetVersion
TdiGetVersion proc stdcall
VxDcall VTDI_Get_Version
ret
TdiGetVersion endp

public TdiGetInfo
TdiGetInfo proc stdcall
push    OFFSET32 TCPName
VxDcall VTDI_Get_Info
add esp,4
ret
TdiGetInfo endp

其中,一旦调用TdiGetInfo,就蓝屏,我觉得好像没有错误,是不是这个004880008h有问题呢?
请不吝赐教,谢谢!!!
签名是什么?
CINDS
驱动牛犊
驱动牛犊
  • 注册日期2001-03-26
  • 最后登录2005-08-11
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2002-06-27 15:15
这是MSDN中的

VTDI_Device_ID    equ    0488h

include    vtdi.inc

VxD_IDATA_SEG
TCPName    db    \'MSTCP\', 0
VxD_IDATA_ENDS

VxD_ICODE_SEG

BeginProc GetTCPDispatchTable

    VxDcall    VTDI_Get_Version
    jc short Failure
    push    OFFSET32 TCPName
    VxDcall    VTDI_Get_Info
    add    esp, 4
    ret

Failure:
    sub    eax, eax
    ret

EndProc GetTCPDispatchTable
VxD_ICODE_END
◆与你到永久
CINDS
驱动牛犊
驱动牛犊
  • 注册日期2001-03-26
  • 最后登录2005-08-11
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2002-06-27 15:18
VTDI.INC

Begin_Service_Table VTDI

VTDI_Service VTDI_Get_Version, LOCAL
VTDI_Service VTDI_Start_Timer
VTDI_Service VTDI_Stop_Timer
ifdef DEBUG
VTDI_Service VTDI_Get_Lock
VTDI_Service VTDI_Free_Lock
endif
VTDI_Service VTDI_Schedule_Event
VTDI_Service VTDI_Cancel_Event
VTDI_Service VTDI_Block
VTDI_Service VTDI_Signal
VTDI_Service VTDI_Register
VTDI_Service VTDI_Get_Info
ifdef CHICAGO
VTDI_Service VTDI_Unload
VTDI_Service VTDI_Initialize
VTDI_Service VTDI_Register_UnloadProc
VTDI_Service VTDI_Register_LoadProc
endif


End_Service_Table VTDI
◆与你到永久
zhangyl
驱动牛犊
驱动牛犊
  • 注册日期2001-07-18
  • 最后登录2009-03-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2002-06-27 16:36
是这样的
VxD_IDATA_SEG
TCPName db \'MSTCP\', 0
VxD_IDATA_ENDS

这个段好像不是永久在内存里的,导致不能用了
如何让这个段永存呢?
签名是什么?
zhangyl
驱动牛犊
驱动牛犊
  • 注册日期2001-07-18
  • 最后登录2009-03-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2002-06-27 16:55
呵呵,搞定!
VxD_LOCKED_DATA_SEG
就可以了

不过,TdiSend的时候蓝屏,我怀疑是NDIS_BUFFER的定义有问题,9x下DDK文档说得不清楚!

签名是什么?
游客

返回顶部