WINPKT - Interface between Microsoft Windows and a Packet Driver Prof. Joe R. Doupnik, Utah State University, Logan Utah May, 1992 WINPKT is a helper program for Packet Drivers, called a "shim", because it is inserted between two other programs that normally talk directly to each other. It does an essential job for applications that use packet drivers and that run under Windows: it knows how to contact the application properly when a packet arrives for it. The reason this is a tricky business is that Windows moves applications around in memory, but the packet driver thinks its applications are at fixed addresses. If a packet driver attempts delivery the process will likely cause major systems problems (or worse) when the packet data is written to the wrong address. To use WINPKT: 1. Start your packet driver, but give it an interrupt number higher than the normal 0x60. 2. Start WINPKT with a command line of: winpkt win_int pd_int The first item, win_int, is the interrupt seen by applications as if WINPKT were a Packet Driver. Let win_int be 0x60. The second item, pd_int, is the interrupt of the real Packet Driver, say 0x63. The two must be different values and please make win_int be SMALLER than pd_int. 3. Then start Windows. Tell applications to use the win_int value for a Packet Driver interrupt. Many applications will search for it instead, thus by making win_int smaller than pd_int they will find WINPKT instead of the Packet Driver (and that's what we want to happen). WINPKT does NOT permit one to run multiple TCP/IP applications together in Windows. There are fundamental reasons why this should not be done. It is fine to leave WINPKT installed when Windows is not active, because it becomes transparent then. Please do NOT use the "-w" switch of Crynwr Collection Packet Drivers with WINPKT; that switch causes packets to be discarded. Also it is not necessary to "fix application in memory" via the Windows PIF file when WINPKT is installed because WINPKT is smart enough to let that restriction be removed. Here is a sample network startup Batch file with all the components in place: @echo off c:\wd8003e 0x63 7 0x280 0xca00 (Regular Packet Driver) c:\winpkt 0x60 0x63 (WINPKT) c:\ipx (Packet Driver version of Novell's IPX) c:\netx PS=edu-usu-netlab2 (Novell, connnect to my server) @echo on (End of WINPKT.DOC)