Solved

The wierdest question about modems:40 chars

Posted on 2002-05-28
12
154 Views
Last Modified: 2010-05-02
Try connecting two comps using newvbterm.exe of microsoft, or any other similar program using mscomm. Send exactly 41 or 42 characters.You'll find that exactly 40 characters get transmitted everytime.the last 1,2 chars get deleted from the output buffer.Any other similar numbers,anyone ? Or at least a way to solve the problem...?
0
Comment
Question by:sudeepn
  • 5
  • 3
  • 3
  • +1
12 Comments
 
LVL 16

Expert Comment

by:Richie_Simonetti
ID: 7040109
interesting...
0
 
LVL 1

Expert Comment

by:aaronkempf
ID: 7040800
id try sending some sort of VBCRLF character.

0
 

Author Comment

by:sudeepn
ID: 7041689
Helllllp!!! Anybody!


I found that it sometimes happens with 9/10 chars as well. It sends 8 chars, deletes the last 1/2 chars.

Even VBCRLF sometimes doesnt work. I think the only way to solve the problem is to add random chars at the end. This way it works.
0
 
LVL 1

Expert Comment

by:aaronkempf
ID: 7042171
i know of one person you can ask this-- but im sure that he'd make you buyg his backup software in order to get an answer.

www.ultrabac.com
0
 
LVL 1

Expert Comment

by:aaronkempf
ID: 7042174
i know thats kindof a backwards answer-- but its the truth..
0
 

Author Comment

by:sudeepn
ID: 7043692
www.ultrabac.com has nothing to do with this.And this site is not an advertising space for those who dont know how to answer.
0
IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 
LVL 4

Expert Comment

by:mcoop
ID: 7045613
I haven't tried your setup, but as I have had zero problems with MS-Comm when I use it properly... (and I have made a few mistakes !)

Perhaps you're simply not reading all the characters that are in the receive buffer.

There is no guarantee that a whole message will be delivered when the rx_commevent triggers.  You may have to buffer the input, and concatenate subsequent messages until your delimiter/terminator (e.g. CR/LF) is present... only then can you determine whether the whole message has been transferred (or not).

I only suggest this, as I see many people think that MS-Commm does everything - including read and interpret your data - but sadly this is not the case.

The reason many developers get away with this approach (most times) is that the messages are relatively short and bursty - so the RX buffer never overflows between Rx_comevents.

Good luck, I'd like to hear how this resolves.


0
 

Author Comment

by:sudeepn
ID: 7046382
I found the answer myself...in case anyone in the future gets into a similar problem. Send a few random characters every 1/1.5 seconds. This will ensure that all the data is received at the other end. Wierd answer.But it works, as the question itself is absurd.
0
 
LVL 4

Accepted Solution

by:
mcoop earned 50 total points
ID: 7046518
In the case that sudeepn's comment is the 'solution', then I stand by my earler comment that there is in fact no 'fault' but rather that the user's receive buffer is simply not being handled in the right manner to catch the type of mixed length strings being sent.
0
 

Author Comment

by:sudeepn
ID: 7048493
"...then so be it."
0
 

Author Comment

by:sudeepn
ID: 7048494
"then so be it"
0
 
LVL 4

Expert Comment

by:mcoop
ID: 7048514
Cheers & thanks
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Introduction I needed to skip over some file processing within a For...Next loop in some old production code and wished that VB (classic) had a statement that would drop down to the end of the current iteration, bypassing the statements that were c…
You can of course define an array to hold data that is of a particular type like an array of Strings to hold customer names or an array of Doubles to hold customer sales, but what do you do if you want to coordinate that data? This article describes…
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
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…

757 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