Solved

RS232 comm spy, peek, sniff, capture, redirect

Posted on 2004-09-07
9
833 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 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
Online Training Solution

Drastically shorten your training time with WalkMe's advanced online training solution that Guides your trainees to action. Forget about retraining and skyrocket knowledge retention rates.

 
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
 

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

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Most everyone who has done any programming in VB6 knows that you can do something in code like Debug.Print MyVar and that when the program runs from the IDE, the value of MyVar will be displayed in the Immediate Window. Less well known is Debug.Asse…
This article describes some techniques which will make your VBA or Visual Basic Classic code easier to understand and maintain, whether by you, your replacement, or another Experts-Exchange expert.
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…

751 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