Solved

Redirect Console over Winsock

Posted on 2004-03-24
7
591 Views
Last Modified: 2013-11-13
I was curious if anyone knew a way to redirect a console over winsock? I have a console based program that runs on Machine B. I would like to be able to telnet to Machine B from Machine A and have it like I am using the DOS window on MACHINE B.

If you need further explanation, let me know. I dont need a full example I know how to program I just need to know how to redirect the console so that it will display properly in telnet on the other side.


-Brian
0
Comment
Question by:BrianGEFF719
  • 4
  • 2
7 Comments
 
LVL 5

Expert Comment

by:ennixo
ID: 10679796
you can get the command line's result with a > filename into the filename

example:
the client sends "dir", the server does :
dir > a.txt

then just open a.txt and send the content
to the client
0
 
LVL 19

Author Comment

by:BrianGEFF719
ID: 10681852
I cant do it like that, I need to have the program running and redirect whats going on with it. Its a DOS Program I use to manage a database on computer B and I need to be able to view the progress as if I am running the program on the computer.


-Brian
0
 
LVL 5

Expert Comment

by:jerry_jeremiah
ID: 10684892
Stdin and stdout are available as file handles.  This is a good thing, but if the program writes directly to the console's memory it may not go through stdout.  Is all the output going to stdout?

If so, then all you have to do is start the program the same way as a CGI program is started from a web server.  The socket server starts the program with the stdin and stdout as pipes then it can read from the socket and write to the stdin pipe, read from the stdout pipe and write to the socket.

For an example of how that might work, take a look at the source for any webserver that can do CGI (Apache comes to mind since the source is available)

I may try to put together an example...

Jerry
0
Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

 
LVL 5

Expert Comment

by:jerry_jeremiah
ID: 10684930
Does this program that converts the socket stuff into stdin and stdout have to be a VB program?  The question is in the VB section...  If it can be in C try the pipe() function in the standard library.  The Visual Studio help file even has an example for the pipe() function.

Jerry
0
 
LVL 5

Accepted Solution

by:
jerry_jeremiah earned 500 total points
ID: 10684970
Ok, I think I have something here.  I did a search for the words:

     stdin stdout pipe "Visual Basic"

and found:

http://www.vbcity.com/forums/topic.asp?tid=46126
http://support.microsoft.com/support/kb/articles/Q173/0/85.ASP 
http://codeproject.com/atl/redirect.asp

If you do the same search you will likely find others...  Actually there is a lot of good stuff - I recommend doing the search.

Jerry
0
 
LVL 19

Author Comment

by:BrianGEFF719
ID: 10684979
Think of it like this...

Lets say I want to run FDISK over a network connection (hypothetical statement). I would want  to be able to telnet to the computer and have the computer run FDISK and redirect it back to the client so it can be displayed in a TELNET client.


-brian
0
 
LVL 5

Expert Comment

by:jerry_jeremiah
ID: 10702714

Here is something else that will help you.

Assuming you can make a program that:
 - starts a command line program (fdisk, cmd, etc)
 - connects to the stdin and stdout
 - provides a socket server that allows telnet-type connections

Then you need some way of starting it remotely.  It has to be running on the remote machine, so you need some way to start it on that remote machine.

So, then I found something that could do that.  But it also does what you want (e.g. run fdisk remotely and display the results locally)  Check this out:

http://www.sysinternals.com/ntw2k/freeware/psexec.shtml

In general, the stuff at sysinternals.com is worth knowing about...

Jerry
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

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

Enums (shorthand for ‘enumerations’) are not often used by programmers but they can be quite valuable when they are.  What are they? An Enum is just a type of variable like a string or an Integer, but in this case one that you create that contains…
The purpose of this article is to demonstrate how we can use conditional statements using Python.
This tutorial will introduce the viewer to VisualVM for the Java platform application. This video explains an example program and covers the Overview, Monitor, and Heap Dump tabs.
The viewer will learn how to use the return statement in functions in C++. The video will also teach the user how to pass data to a function and have the function return data back for further processing.

813 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

13 Experts available now in Live!

Get 1:1 Help Now