Solved

RS232 comm spy, peek, sniff, capture, redirect

Posted on 2004-09-07
9
805 Views
Last Modified: 2008-02-26
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
Comment
Question by:Vincentpiraino
  • 5
  • 3
9 Comments
 
LVL 55

Accepted Solution

by:
Jaime Olivares earned 500 total points
ID: 12001962
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
 

Author Comment

by:Vincentpiraino
ID: 12002463
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
 
LVL 55

Expert Comment

by:Jaime Olivares
ID: 12002479
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
 
LVL 55

Expert Comment

by:Jaime Olivares
ID: 12002482
About using WinExec:

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

WinExec ("thesameprogram.exe");
0
Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

 

Author Comment

by:Vincentpiraino
ID: 12009852
jaime_olivarea, was your last entry meant for another question?
0
 
LVL 55

Expert Comment

by:Jaime Olivares
ID: 12010649
Sorry, you are right.
0
 

Author Comment

by:Vincentpiraino
ID: 12022032
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
 
LVL 55

Expert Comment

by:Jaime Olivares
ID: 12068967
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

How to improve team productivity

Quip adds documents, spreadsheets, and tasklists to your Slack experience
- Elevate ideas to Quip docs
- Share Quip docs in Slack
- Get notified of changes to your docs
- Available on iOS/Android/Desktop/Web
- Online/Offline

Join & Write a Comment

There are many ways to remove duplicate entries in an SQL or Access database. Most make you temporarily insert an ID field, make a temp table and copy data back and forth, and/or are slow. Here is an easy way in VB6 using ADO to remove duplicate row…
When trying to find the cause of a problem in VBA or VB6 it's often valuable to know what procedures were executed prior to the error. You can use the Call Stack for that but it is often inadequate because it may show procedures you aren't intereste…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…

707 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now