Erstellen Sie einen virtuellen COM-Port - eine Softwarelösung von Eltima


Virtuelle serielle Ports sind unerlässlich, wenn ältere Softwareprogramme eine Verbindung zu COM-Port-Geräten herstellen müssen, die aufgrund fehlender physischer serieller Ports nicht mit der Software an den Computer angeschlossen werden können. Das Gerät kann auch serielle Daten über das Internet oder LAN über eine TCP / IP-Verbindung an die App senden, unabhängig davon, wie weit sie voneinander entfernt sind.

In diesem Artikel finden Sie ein kurzes Tutorial zum Emulator virtueller serieller Ports, in dem Sie erfahren, wie Sie mithilfe einer einfachen, aber dennoch effizienten Treibersoftware für virtuelle Ports virtuelle serielle Schnittstellen in Ihrem Computer erstellen. Und ich hoffe, dass Sie mit den Informationen in diesem Artikel den traditionelleren Formen des Testens und Debuggens serieller Apps einen Schritt voraus sind.

Inhaltsverzeichnis:

  1. FAQ
  2. Wie erstelle ich eine virtuelle serielle Schnittstelle?
  3. Verwenden von VSPD mit Programmiersprachen
  4. Informationen zum COM-Anschluss und zur seriellen Kommunikation
  5. Wofür wird ein virtueller COM-Port verwendet??
  6. Fazit

Mit dem Virtual COM Port Driver von Eltima Software können Sie eine unbegrenzte Anzahl von seriellen Port-Paaren erstellen, die über ein virtuelles Nullmodemkabel verbunden sind.
VSPD logo

Virtual Serial Port Driver

Erstellen Sie virtuelle COM-Port-Paare in Windows
5 Rang basierend auf 86+ Nutzer, Bewertungen(97)
Herunterladen 14 Tage voll funktionale Testversion
Virtual Serial Port Driver


Um zu verdeutlichen, was wir in dem Artikel beschreiben, lesen Sie den Abschnitt FAQ.

Häufig gestellte Fragen

Eine serielle Kommunikation bedeutet, dass die Datenbits in einer bestimmten Reihenfolge angeordnet sind und nacheinander über ein serielles Kabel transportiert werden, wodurch die Datenintegrität sichergestellt wird. Einige andere Vorteile dieser Art von Verbindung umfassen eine einfache Verkabelung und eine zuverlässige Datenübertragung über Fernverbindungen.
Um eine virtuelle serielle Schnittstelle in Windows 10 zu erstellen, benötigen Sie eine professionelle Softwarelösung Virtual Serial Port Driver. Es sind keine zusätzliche Hardware und Kabel erforderlich. Lesen Sie die folgenden schrittweisen Anweisungen, um eine virtuelle serielle, Schnittstelle zu erstellen.
Eine virtuelle serielle Schnittstelle ist ein Softwarepaket, das echte vollständig emuliert. Ihr Betriebssystem und alle Dienstprogramme erkennen es also und interagieren mit ihm, als wäre es eine echte COM-Schnittstelle.
Es kommt häufig vor, dass der Benutzer beim Arbeiten mit dem Problem des physischen Fehlens eines COM-Ports konfrontiert ist. Ein wesentlicher Vorteil virtueller serieller Schnittstellen besteht darin, dass sie zum Testen und Debuggen von Software verwendet werden können, wenn im System kein physischer COM-Anschluss verfügbar ist.
1. Die Software verbindet virtuelle serielle Ports mit einem virtuellen Nullmodemkabel, sodass über die COM-Ports Daten zwischen verschiedenen Anwendungen über die RS232-Schnittstelle übertragen werden können. Für diesen Zweck konfigurierte virtuelle Ports verwenden nicht die Standardeinstellungen der Datenübertragungsgeschwindigkeit.

2. Dank eines seriellen Port-Simulators ist es möglich, Daten zwischen zwei oder mehr Anwendungen auszutauschen, ohne die komplexe Softwaretechnologie der Interprozesskommunikation und der gemeinsamen Nutzung von Ressourcen zu verwenden. Auf diese Weise verlässt sich ein Programmierer für den Datenaustausch eher auf virtuelle als auf physische COM-Ports. In der Regel ist die Geschwindigkeit der Datenübertragung über virtuelle COM-Ports höher als die Datenübertragung über reale serielle Ports.

3. Darüber hinaus besteht ein Hauptvorteil von virtuellen seriellen Schnittstellen darin, dass sie zum Testen und Debuggen von Software verwendet werden können, wenn im System kein physischer COM-Anschluss verfügbar ist.

So erstellen Sie eine virtuelle serielle Schnittstelle und benutzen?


Die meisten Computer verfügen nicht mehr über DB9-Anschlüsse, über die sie direkt mit industrieller oder kommerzieller Hardware verbunden wurden. Sie können jedoch jetzt einen virtuellen COM-Anschluss erstellen und damit Daten über das Netzwerk übertragen. Der virtuelle COM-Anschluss spart Zeit und senkt die Kosten durch die Verwendung unveränderter Legacy-Software.

Wenn Sie sich also fragen, wie Sie eine virtuelle serielle Schnittstelle erstellen und in beliebiger Entfernung verwenden können, verwenden Sie die Virtual Serial Port Driver-App um virtuelle serielle Anschlusspaare zu erstellen, die über ein virtuelles Nullmodemkabel verbunden sind. Wenn Sie nach einer Lösung zum Hinzufügen eines COM-Anschlusses in Windows 10 suchen, hilft Ihnen unser Lernprogramm, Probleme mit dem COM-Anschluss von Windows 10 mit zwei Methoden zu beheben.

Erstellen Sie jetzt eine virtuelle serielle Schnittstelle
14 Tage kostenlose Testversion

Gehen Sie folgendermaßen vor, um ein virtuelles serielles Port-Paar zu erstellen:

  1. Öffnen Sie das Hauptfenster der App und wechseln Sie zur Registerkarte "Ports verwalten". blank
  2. Wählen Sie die Ports aus der Liste aus oder geben Sie ihre Namen manuell ein. Mit den Namen haben Sie unbegrenzte Möglichkeiten, Ihre Ports nach Ihren Wünschen zu benennen. Behalten Sie jedoch die Apps im Auge, die möglicherweise keine benutzerdefinierten Namen für Ports unterstützen. Für RDP-Sitzungen ist es praktisch, die Option "Nur Ports für diese Benutzersitzung erstellen" zu verwenden, damit Sie in der nächsten Sitzung dieselben Namen erhalten. Virtual Serial Port Emulator
  3. Klicken Sie auf die Schaltfläche "Paar hinzufügen" und Sie haben die virtuellen COM-Ports zur Verwendung bereit. blank
  4. Wiederholen Sie die obigen Schritte so oft wie nötig, um eine erforderliche Anzahl von Ports zu erstellen. blank

Die Vorteile von Virtual Serial Port von Eltima


  • Mit einem Virtual Serial Port-Treiber können Sie eine unbegrenzte Anzahl von virtuellen COM-Port-Paaren hinzufügen, die über ein virtuelles Nullmodemkabel verbunden sind. Darüber hinaus bietet die Software die Möglichkeit, alle erstellten Paare in einem Clic zu entfernen.

  • Einmal erstellte und konfigurierte virtuelle serielle Ports werden beim Neustart des Systems vor der Benutzeranmeldung automatisch neu erstellt. Außerdem müssen Sie keine Ports schließen, wenn Sie die Einstellungen für virtuelle Paare ändern oder ein Paar vollständig löschen müssen.

  • Die App ermöglicht es, nicht nur virtuelle COM-Ports zu erstellen, sondern ihnen alle gewünschten Namen zu geben, einschließlich derer, die bereits von den vorhandenen physischen Ports verwendet werden. Benutzer können eine erforderliche virtuelle Schnittstelle leicht in der Gruppe "Ports" des Geräte-Managers finden.

  • Die Softwaretreiber haben die WHQL-Tests (Microsoft Windows Hardware Quality Labs) erfolgreich bestanden und sind von Microsoft digital signiert. Dies bedeutet, dass Sie beim Erstellen virtueller COM-Ports unter Windows 10, Windows Server 16, Windows XP usw. keine Warnungen erhalten.

  • Der Virtual Serial Port Driver unterstützt vollständig Standard-Hardware-Signalleitungen, einschließlich DTR/DSR/CTS/RTS/DCD/RI usw. und Software-Flusskontrolle (Xon/Xoff).

  • Die Nullmodememulation ist ein weiterer Vorteil, den Sie mit diesem Dienstprogramm erhalten. Der Virtual Serial Port Driver ermöglicht das Emulieren einer virtuellen seriellen Leitungsverbindung und deren Unterbrechung. Darüber hinaus bietet die Software verschiedene virtuelle Nullmodem-Schemata, die als Vorlage gespeichert werden können.

  • Darüber hinaus enthält der Virtual Serial Port Driver die Datei vspdctl.dll, mit der Sie die Funktionalität direkt von Ihrer eigenen Anwendung aus steuern können. Mithilfe dieser dynamischen Linkbibliothek können Sie virtuelle COM-Port-Paare im laufenden Betrieb erstellen und löschen, ohne sich auf das Standardkonfigurationsprogramm und dessen GUI verlassen zu müssen.

Verwenden von VSPD mit Programmiersprachen


★ VSPD mit C/C++

Um die Funktionalität des virtuellen Portemulators in C und C++ nutzen zu können, müssen Sie die DLL-Datei dynamisch laden, die erforderlichen Funktionen auswählen und aufrufen. Hier ist ein Beispiel, wie Sie dies in Visual C++ tun können:

Sie können auch ein hervorragendes Beispiel für die Programmierung eines virtuellen COM-Anschlusses mit Visual Basic und Visual C++ für die Kommunikation zwischen AVR und PC mithilfe des Virtual Serial Port Driver sehen.

typedef bool (stdcall *CreatePairFn)(char *Port1, char *Port2);
typedef bool (stdcall *DeletePairFn)(char *Port);
typedef bool (stdcall *DeleteAllFn)(void);
typedef bool (stdcall *SetStrictBaudrateFn) (char *Port, bool StrictBaudrate);
typedef bool (stdcall *SetBreakFn) (char *Port, bool bBreak);
typedef bool (stdcall *QueryBusFn) (void* InBuffer, long sizeInBuffer, void* OutBuffer, long sizeOutBuffer);
typedef bool (stdcall *SetWiringFn) (char *Port, void *Buffer, long sizeBuffer);
typedef bool (stdcall *SetAccessListFn) (char *Port, void *Buffer, long sizeBuffer);
typedef bool (stdcall *CreatePairExFn)(char *Port1, char *Port2, char * UserSession);
typedef bool (stdcall *CreatePairWFn)(WCHAR *Port1, WCHAR *Port2);
typedef bool (stdcall *CreatePairExWFn)(WCHAR *Port1, WCHAR *Port2, WCHAR * UserSession);
typedef bool (stdcall *DeletePairWFn)(WCHAR *Port);
typedef bool (stdcall *SetStrictBaudrateWFn) (WCHAR *Port, bool StrictBaudrate);
typedef bool (stdcall *SetBreakWFn) (WCHAR *Port, bool bBreak);
typedef bool (stdcall *SetWiringWFn) (WCHAR *Port, void *Buffer, long sizeBuffer);
typedef bool (stdcall *SetAccessListWFn) (WCHAR *Port, void *Buffer, long sizeBuffer);
typedef bool (stdcall *DeletePairExFn)(char *Port, char * UserSession);
typedef bool (stdcall *DeletePairExWFn)(WCHAR *Port, WCHAR * UserSession);
typedef bool (stdcall *GetUserSessionFn)(char *Session, int &iSize);
typedef bool (stdcall *GetUserSessionWFn)(WCHAR *Session, int &iSize);
typedef bool (stdcall *SetStrictBaudrateExWFn) (WCHAR *Port, WCHAR * UserSession, bool StrictBaudrate);
typedef bool (stdcall *SetStrictBaudrateExFn) (char *Port, char * UserSession, bool StrictBaudrate);
typedef bool (stdcall *SetBreakExWFn) (WCHAR *Port, WCHAR * UserSession, bool bBreak);
typedef bool (stdcall *SetBreakExFn) (char *Port, char * UserSession, bool bBreak); typedef bool (stdcall *SetAccessListExWFn) (WCHAR *Port, WCHAR * WCHAR, void *Buffer, long sizeBuffer);
typedef bool (stdcall *SetAccessListExFn) (char *Port, char * WCHAR, void *Buffer, long sizeBuffer);

Codebeispiel:

bool CreateVSPair(char *Port1, char *Port2) {
OSVERSIONINFO VersionInfo;
HINSTANCE libInst;
libInst = LoadLibrary(VSPDCTL.DLL);
if (!libInst)
return false; /* Couldn't load library */
/* Substitute the typedefs above for functions other than CreatePairFn */
CreatePairFn CreatePair=(CreatePairFn)GetProcAddress(libInst, CreatePair);
if (CreatePair==0) return false; /* Couldn`t find function */
returnvalue=CreatePair(Port1, Port2); /* For example, Port1 = COM5 and Port2 = COM6 */
FreeLibrary(libInst);
return returnvalue;
};

★ VSPD mit Visual Basic

Die Installation von VSPD-Funktionen ist für Visual Basic-Benutzer viel einfacher. Sie müssen lediglich die folgenden Zeilen in die Quelldatei von Visual Basic einfügen:

Declare Function CreatePair Lib "VSPDCTL.DLL" (ByVal Port1$, ByVal Port2$) As Boolean
Declare Function DeletePair Lib "VSPDCTL.DLL" (ByVal Port$) As Boolean
Declare Function DeleteAll Lib "VSPDCTL.DLL" () As Boolean
Declare Function SetStrictBaudrateName Lib "VSPDCTL.DLL" (ByVal Port$, ByVal StrictBaudrate As Boolean) As Boolean
Declare Function SetStrictBaudrateHandle Lib "VSPDCTL.DLL" (ByVal Handle As Long, ByVal StrictBaudrate As Boolean) As Boolean
Declare Function CreatePair Lib "VSPDCTL.DLL" (ByVal Port1$, ByVal Port2$) As Boolean
Declare Function DeletePair Lib "VSPDCTL.DLL" (ByVal Port$) As Boolean
Declare Function DeleteAll Lib "VSPDCTL.DLL" () As Boolean
Declare Function SetStrictBaudrate Lib "VSPDCTL.DLL" (ByVal Port$, ByVal StrictBaudrate As Boolean) As Boolean
Declare Function SetBreak Lib "VSPDCTL.DLL" (ByVal Port$, ByVal bBreak As Boolean) As Boolean
Declare Function QueryBus Lib "VSPDCTL.DLL" (ByVal InBuffer As String, sizeInBuffer As Long, ByVal OutBuffer As String, sizeOutBuffer As Long) As Boolean
Declare Function SetWiring Lib "VSPDCTL.DLL" (ByVal Port1$, ByVal Buffer As String, sizeBuffer As Long) As Boolean

Legen Sie VSPDCTL.DLL in das Verzeichnis Ihres Programms. Jetzt kann die Funktion direkt aufgerufen werden.


★ VSPD mit Delphi

Hier sind die Funktionsdeklarationen für Delphi:

Function CreatePair(Port1, Port2 : PChar) : Boolean; stdcall; external "VSPDCTL.DLL";
Function DeletePair(Port : PChar) : Boolean; stdcall; external "VSPDCTL.DLL";
Function DeleteAll : Boolean; stdcall; external "VSPDCTL.DLL";
Function SetStrictBaudrateName(Port: PChar, StrictBaudrate: Boolean) : Boolean; stdcall; external "VSPDCTL.DLL";
Function SetStrictBaudrateHandle(hPort: THandle, StrictBaudrate: Boolean) : Boolean; stdcall; external "VSPDCTL.DLL";
Function CreatePair(Port1, Port2 : PChar) : Boolean; stdcall; external "VSPDCTL.DLL";
Function DeletePair(Port : PChar) : Boolean; stdcall; external "VSPDCTL.DLL";
Function DeleteAll : Boolean; stdcall; external "VSPDCTL.DLL";
Function SetStrictBaudrate(Port: PChar, StrictBaudrate: Boolean) : Boolean; stdcall; external "VSPDCTL.DLL";
Function SetBreak (Port: PChar, bBreak: Boolean) : Boolean; stdcall; external "VSPDCTL.DLL";
Function QueryBus (InBuffer: Pointer, sizeInBuffer: Integer, OutBuffer: Pointer, sizeOutBuffer: Integer) : Boolean;
stdcall; external "VSPDCTL.DLL";
Function SetWiring (Port: PChar Buffer: Pointer, sizeBuffer: Integer) : Boolean; stdcall; external "VSPDCTL.DLL";

Delphi kann ArmAccess entweder dynamisch oder statisch laden. Hier ist ein Beispielcode für das dynamische Laden:

Function CreatePairFn(PortName1, PortName2 : String) : Boolean;
Type TCreatePair = function(Port1, Port2 : PChar) : Boolean; stdcall;
Var Handle : THandle;
CreatePair : TCreatePair;
Begin
CreatePairFn := False;
Handle := LoadLibrary("VSPDCTL.DLL");
If (Handle <> 0) Then
Begin
@CreatePair:=GetProcAddress(Handle, "CreatePair");
If (CreatePair <> Nil) Then
CreatePairFn := CreatePair(PChar(PortName1), PChar(PortName2));
FreeLibrary(Handle);
End;
End;

Informationen zum COM-Anschluss und zur seriellen Kommunikation


Die serielle Kommunikation vor etwa einem Jahrzehnt war eine der beliebtesten Möglichkeiten, verschiedene Geräte und Geräte an einen Computer anzuschließen. Heute ist der COM-Port jedoch nicht mehr so häufig wie früher. Obwohl ein guter alter Kommunikationsanschluss bis zu einem gewissen Grad durch eine USB-Schnittstelle ersetzt wurde, verwenden Tausende moderner Industriegeräte, Laborinstrumente, medizinische Geräte usw. immer noch RS-232 als Standard-Ein-/Ausgangsanschluss.


Gleichzeitig wurden neue PCs trotz der vielen Vorteile, die serielle Schnittstellen bieten, nicht mehr mit einer RS-232-Schnittstelle ausgeliefert. Dies verursacht große Unannehmlichkeiten beim Testen und Debuggen von serieller Software unter Verwendung älterer serieller Apps usw.

Wofür wird ein virtueller COM-Port verwendet?


Aufgrund des physischen Fehlens der seriellen Schnittstelle besteht die bestmögliche Option darin, eine virtuelle serielle Schnittstelle zu erstellen, die die Konfiguration und Einstellungen einer echten COM-Schnittstelle vollständig emuliert und Daten über ein virtuelles Nullmodemkabel mit anderen virtuellen oder realen Schnittstellen kommuniziert.

Einer der unbestreitbaren Vorteile virtueller COM-Ports bleibt die Geschwindigkeit des Datenaustauschs. Wenn die Daten über einen virtuellen Port übertragen werden, wird die Geschwindigkeit nicht durch die Eigenschaften der Schnittstelle begrenzt (wie dies bei physischen Ports der Fall ist), sondern nur durch die Systemparameter. Dadurch wird der Verkehr deutlich schneller transportiert.

Fazit


Die Methode zum Testen und Diagnostizieren von Software mit virtuellen Geräten ist heute bei Entwicklern der Software für Kommunikationssysteme weit verbreitet. Ein virtuelles Gerät simuliert das Verhalten eines realen Geräts auf Softwareebene, sodass ein Programmierer eine Anwendung in der Entwicklungsphase testen und debuggen kann.

Die Methode der Emulation serieller Schnittstellen wird häufig bei der Entwicklung komplexester Kommunikationssysteme angewendet, einschließlich Geräten mit RS232- und RS485-Schnittstellen. Derzeit gibt es eine breite Palette von Softwaretools, mit denen mehrere virtuelle serielle Ports in Betriebssystemen (vorwiegend Windows-Betriebssysteme) erstellt werden können.

Mithilfe zusätzlicher virtueller COM-Ports können Entwickler den Datenaustausch zwischen RS232- und RS485-Schnittstellen testen. Wenn es um erweiterte Funktionalität und Benutzerfreundlichkeit geht, scheint Virtual Serial Port Emulator das derzeit leistungsstärkste Programm zu sein. Die Lösung ist vollständig kompatibel mit verschiedenen Versionen des Windows-Betriebssystems. Darüber hinaus ist der Emulator für die serielle Schnittstelle für Windows 10 mit WHQL digital signiert, was seine Leistung und Stabilität garantiert.

small logo Virtual Serial Port Driver
#1 bei Serial Port Software
Virtual Serial Port Driver
Emulation der seriellen Schnittstelle
5 rang basierend auf 86+ Nutzer
Holen Sie sich einen Download-Link für Ihren Desktop.
Senden Sie Ihre E-Mail-Adresse, um einen Link zum sofortigen Download auf Ihrem Desktop zu erhalten!
oder