I have a c++/cli tcp client application sending a data in a specific format like L,20100930033425093,-5.929958,13.164021 to a main application on port 9000.The main application is actually done by the other vendor and I dont have the source code for that.

Now,I can communicate to the desired application using the IP and Port No.But the data supposed to be visible on the Main Application GUI is not showing up. But I used a different socket server demo application with same IP as the main application to receive the data I am sending.It works perfectly fine. Now I do not know where the error is or whether the stream is received on the other side. How can I effectively solve this situation. I am asking this in a broader picture to get some ideas.

Any suggestions or discussion on this will be helpful?

2 Answers 2


Try the following:

  1. Check your data. Are you sure it's the right format? Sorry for being Captain Obvious, but I regularly forget to include important, but invisble, characters like linebreaks, null bytes, etc.

  2. Use Wireshark to look at what your application sends and what the demo application sends. If your message shows up in Wireshark you can also be pretty sure it will reach its destination, since you're using TCP.

  3. Ask the main application vendor for support, if at all possible. Send them a sample script showing how you connect to their server and what data you are transmitting.

  • what are the nullbytes?
    – ShivShambo
    Commented Jul 12, 2012 at 9:01
  • A null byte is a byte with the value zero. Some protocols use them to delimit their messages. Commented Jul 12, 2012 at 10:14
  • I HIGHLY recommend using Wireshark to take traces of the demo app's communications and then traces of your app's communications. There's probably some subtlety of formatting that you are not yet aware of that you don't replicate properly. Be especially wary around line endings (CR vs LF vs CR LF). Commented Jul 12, 2012 at 11:31
  • @MichaelKohne I installed the wireshark. can it be used to track the traffic between the two software applications on the same IP.
    – ShivShambo
    Commented Jul 13, 2012 at 2:45

It is not your job to find the error, this is the duty of the other vendor.

All you have to do is to report the bug with as many relevant information as possible. For that, you may want to follow Joel's advices:

Every good bug report needs exactly three things.

  1. Steps to reproduce,
  2. What you expected to see, and
  3. What you saw instead.
  • i have already sent them the status with the images.waiting for a reply..
    – ShivShambo
    Commented Jul 12, 2012 at 9:01
  • @mouviciel - That's a good summary of how to report the bug, and that's probably a good thing to get started while continuing to debug, but I don't think it's reasonable to say it's not the OP's job for two reasons: 1) In many cases, the fact that the other end is broken just means that you have to figure out how to deal with it. 2) It may be that the OP actually has something wrong, and just needs to debug more. Commented Jul 12, 2012 at 11:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.