How to Monitor or Intercept COMM Data Traffic in Windows 95

ID: Q141230


The information in this article applies to:
  • Microsoft Win32 Device Development Kit (DDK) for Windows 95


SUMMARY

In Windows 95, you may sometimes want to set up a way to intercept all COMM data passing from any application to and from the hardware in use. Generally, not all traffic is successfully caught.


MORE INFORMATION

There are five basic ways data and control is passed to VCOMM/COMBUFF:

  • Exported protected mode API.


  • VCOMM_WRITE_COMM VxD calls used with helper VxD's - 16-bit or 32-bit applications.


  • DeviceIOControl for 32-bit applications.


  • int 2F calls used with USER/COMM.DRV - 16-bit applications.


  • COMMBUFF for MS-DOS VMs bypasses VCOMM altogether - MS-DOS-based applications


If you are only hooking one of these, you will eventually miss data in some application. The INT 2F and COMBUFF are not completely publically documented, so it isn't a simple job to monitor all data. The best way to intercept COMM data is to create a miniport driver (see Vcomm.doc and serial sample and Msports.inf) that would require its own enumerator (static VxD) to register the miniport with VCOMM. The miniport would receive the traffic and, on its own, open the actual port to relay through traffic.

A second solution is to register your custom port driver alone and have it talk directly to the hardware.

A third solution is to write your own version of Serial.vxd, name it something different (required) and write an .inf to install it.

Additional query words: 4.00

Keywords :
Version : 4.00
Platform : WINDOWS
Issue type :


Last Reviewed: December 19, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.