Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 881
  • Last Modified:

RS232 comm spy, peek, sniff, capture, redirect

I would like to spy (peek, sniff, capture, redirect) data sent to a comm (RS232) port from an existing application that cannot be modified for purposes of modifying that information into a new data stream for export to another RS323 port. I have a navigation program that sends out  tracking information through an RS232 port using the newer NMEA 0183 protocal. I would like to modify this data to an older NMEA 0180 protocal so that my vintage auto pilot will accept it. I am looking for a VB 6.0 preferrable application. the application cannot interfere with the communications, it should only be able to read the data being sent out the RS232 port.
0
Vincentpiraino
Asked:
Vincentpiraino
  • 5
  • 3
1 Solution
 
Jaime OlivaresSoftware ArchitectCommented:
Well, let's start saying that this is done generally in C. Windows serial driver doesn't allow you to access serial port while other process is doing the same, so you need to replace Windows standard serial driver with a "filter serial driver" (SERIAL.SYS in WinXP, SERIAL.VXD in Win9x).
Once you haver replaced the driver you will need to talk with it with proper calling (usually done in C/C++). Here is an example of serial application that use the refered method:
http://www.getsomesoft.com/Utilities/System-Tools/11719-Serial-Monitor.html
0
 
VincentpirainoAuthor Commented:
jaime_olivares, thanks for response. Is there a VB solution (with souce code) that can interface to a "filter serial driver"? I checked out serial monitor but that seems to require $ plus C programming skills.
0
 
Jaime OlivaresSoftware ArchitectCommented:
Sincerely I don't know about a Visual Basic solution, sometimes you can translate C code to Visual Basic with some performance penality. But the stuff about the driver is fully valid.
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
Jaime OlivaresSoftware ArchitectCommented:
About using WinExec:

Private Declare Function WinExec Lib "kernel32" (ByVal lpCmdLine As String, Optional ByVal nCmdShow As Long) As Long

WinExec ("thesameprogram.exe");
0
 
VincentpirainoAuthor Commented:
jaime_olivarea, was your last entry meant for another question?
0
 
Jaime OlivaresSoftware ArchitectCommented:
Sorry, you are right.
0
 
VincentpirainoAuthor Commented:
I confirmed with HDD Software that VB won't be able to (easily anyway) interface with the object in Serial Monitor, this was there response:

"The classes and interfaces of the Serial Monitor are developed in such way, that are accessible only to compiling languages, such as C++ or Pascal. More precise, all interfaces are marked "local", so cannot take part in automation, which is the way Visual Basic uses them."

Any other thouhts?
0
 
Jaime OlivaresSoftware ArchitectCommented:
I recommend you to switch to C/C++ if you want to dedicate to this kind of applications. Visual Basic has many limitations and low performance.
0

Featured Post

Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

  • 5
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now