Link to home
Start Free TrialLog in
Avatar of ChristerH
ChristerH

asked on

Looking NT DDK TDI information and samples

Hi Driver lovers!

The DDK/TDI for Windown NT documentation is not
complete, far away. Information about the parameters
to the function called is missing. The only thing I
wish to do is to interface the TDI from my own kernel
driver at the simplies way, by building an interface
(should not be nessesary!) that supports following:

* Opens a port or creates one for other clients to
  connect against (both TCP and UDP)
* Sends frames from different driver levels
* Makes it possible to register a callback function for     receive frames
* Close/delete the port.

I'm sure that Microsoft-Bill has written some very
good samples during the development of the TDI. I
would be very pleased if i could get some of these.
I did found an example in the DDK for NT 4.0 (Note!!!)
called TDI, but it was too complex, TDI isn't that
hard and difficult to understand that this sample
shows (?).
There must also be some user mode application that
uses that sample and I don't seem to find it!
Avatar of ChristerH
ChristerH

ASKER

Edited text of question
Yes, there are Windows 95 and NT's TDI-client example from PCA-USA, if you are willing to spend about $400.
"http://www.pcausa.com/products/tdiclient.htm"
By the way, the DDK's TDI example is not an example of TDI-client, but an example of TDI driver.  But it will help you in understanding the TDI interface.  NT-DDK does talk a little bit about TDI-client (accessable in both kernel and application layer).  While TDIVXD document talks about a variant TDI interface in Windows 95 environment.
Look at "tdikrnl.h" in "ntddk\src\network\inc" for TDI-client IRP macros.
I have already ordered PCA's "TDICLIENT-95/NT-007 TDI Client sample for Windows 95 and Windows NT". The problem is that this is an ECHO-server that allows clients to connect against it, and then it sends back the packets reusing the system resources allocated when sending the packet back. I wich to also conntct agains other servers and allocate NDIS-buffers, IRS's and other stuff when sending a new packet.
I'm not quite sure what you want to know?  You mean you want to know to use NDIS_BUFFER's and IRP's???
Sorry about mistakingly clicked on "Answer" instead of "Comment".  Driver model in NT is by nature a beast itself.  There are no easy way around it.  But if you really want help, you can check out BlueWater System's NT WinDK toolkit on "http://www.bluewatersystem.com".  They've got easy C++ objects for NT driver and bunch of sample codes.  But once again, they cost money, I mean BIG money, around $1000.
ASKER CERTIFIED SOLUTION
Avatar of SvenT
SvenT
Flag of Sweden image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial