Virtual Serial Port Driver

4/3/2019
topicdescriptionlanguagesproducts
Demonstrates a simple virtual serial driver (ComPort) and a controller-less modem driver (FakeModem).

This sample demonstrates these two serial drivers:

  • A simple virtual serial driver (ComPort)
  • A controller-less modem driver (FakeModem).This driver supports sending and receiving AT commands using the ReadFile and WriteFile calls or via a TAPI interface using an application such as, HyperTerminal.

This sample driver is a minimal driver meant to demonstrate the usage of the User-Mode Driver Framework. It is not intended for use in a production environment.

For more information, see Serial Controller and Device Drivers in the WDK documentation. Youtube dangdut palapa.

Code tour

comsup.cpp & comsup.h

  • COM Support code - specifically base classes which provide implementations for the standard COM interfaces IUnknown and IClassFactory which are used throughout the sample.
  • The implementation of IClassFactory is designed to create instances of the CMyDriver class. If you should change the name of your base driver class, you would also need to modify this file.

dllsup.cpp

  • DLL Support code - provides the DLL's entry point as well as the single required export (DllGetClassObject).
  • These depend on comsup.cpp to perform the necessary class creation.

exports.def

  • This file lists the functions that the driver DLL exports.

internal.h

  • This is the main header file for the sample driver.

driver.cpp & driver.h

  • Definition and implementation of the driver callback class (CMyDriver) for the sample. This includes DriverEntry and events on the framework driver object.

device.cpp & driver.h

  • Definition and implementation of the device callback class (CMyDriver) for the sample. This includes events on the framework device object.

queue.cpp & queue.h

  • Definition and implementation of the base queue callback class (CMyQueue). This includes events on the framework I/O queue object.

VirtualSerial.rc /FakeModem.rc

  • This file defines resource information for the sample driver.

VirtualSerial.inf / FakeModem.inf

  • INF file that contains installation information for this driver.

Clicking on the Download Now (Visit Site) button above will open a connection to a third-party site. Download.com cannot completely ensure the security of the software hosted on third-party sites.

From Eltima Software:
Virtual Serial Port Driver PRO is an effective, comprehensive application that allows for easy management of physical and virtual serial ports. Its ability to customize port parameters and create complex port bundles makes it an ideal solution for many diverse situations. Virtual Serial Port Driver PRO features include the ability to split a single physical COM port into several virtual ports that appear identical to the hardware interface. Physical serial ports and connected devices can be shared by multiple applications. You can redirect data transmission by linking multiple virtual ports to one physical port, allowing your application to receive data simultaneously from all virtual ports through the physical interface. The app supports creation and management of complex port bundles. This allows two-way transmission of serial data by unlimited virtual and physical ports. You can manage hardware control lines by setting a Main Port for both the 'IN' and 'OUT' side of the bundle. Applications that can only take advantage of a limited number of serial ports can use the advanced Switcher feature. This allows several physical ports to be joined into one virtual port. By creating a switcher in your application, your program can use any free serial port when it needs to transmit or receive data. The switcher detects the open ports and offers one to your application. You can also have all ports use the same name and the switcher will provide the same functionality. Merging of serial ports is another advanced feature available in Virtual Serial Port Driver PRO. This option allows you to add unlimited physical and virtual serial ports to any single port bundle that has not been divided into 'IN' and 'OUT' sides. This feature enables all devices and applications to simultaneously communicate with multiple devices or applications. All traffic sent to one port is replicated to all other bundled ports, either physical or virtual.
read more +

What do you need to know about free software?