Revision: 61338
Updated Code
at December 6, 2012 15:47 by Kouga
Updated Code
#include "exec_helper.h"
#include <conio.h>
#include <iostream>
#include <boost/bind.hpp>
#include <boost/thread.hpp>
void read_thread(exec_helper& exec){
std::vector<char> buf(8192);
std::size_t len;
while(exec.is_active())
{
len = exec.read(buf);
if(len > 0) { std::cout.write(&buf[0], len); }
}
}
int main(int argc, char* argv[])
{
exec_helper ssh_exec;
ssh_exec.set_exec_path("plink.exe");
ssh_exec.set_exec_args("-ssh 192.168.1.3 -l admin -pw password");
ssh_exec.start_exec();
boost::thread read(boost::bind(&read_thread, boost::ref(ssh_exec)));
while(ssh_exec.is_active())
{
int ch = _getch();
ssh_exec.write((char *)&ch, 1);
}
read.join();
return 0;
}
Revision: 61337
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at December 6, 2012 15:45 by Kouga
Initial Code
#include "exec_helper.h"
#include <conio.h>
#include <iostream>
#include <boost/bind.hpp>
#include <boost/thread.hpp>
void read_thread(exec_helper& exec){
std::vector<char> buf(8192);
std::size_t len;
while(exec.is_active())
{
len = exec.read(buf);
if(len > 0) { std::cout.write(&buf[0], len); }
}
}
int main(int argc, char* argv[])
{
exec_helper ssh_exec;
ssh_exec.set_exec_path("D:\\cwRsync\\bin\\plink.exe");
ssh_exec.set_exec_args("-ssh 192.168.1.3 -l admin -pw password");
ssh_exec.start_exec();
boost::thread read(boost::bind(&read_thread, boost::ref(ssh_exec)));
while(ssh_exec.is_active())
{
int ch = _getch();
ssh_exec.write((char *)&ch, 1);
}
read.join();
return 0;
}
Initial URL
Initial Description
How few lines does we need?
Initial Title
Start a Process with I/O remapped.
Initial Tags
Initial Language
C++