ChildProcess C++ lib. Simple way to run external process from your app
ChildProcess C++ library version 1.0.4 provides interface to run external process from your application in Linux.
We sell source code of this library as is, without future updates and technical support according to perpetual non-exclusive license. You pay once and can use this library in your software and hardware products without limits. Please read the license agreement before purchasing: LICENSE. You can buy technical support service for this product.
ChildProcess C++ library version 1.0.4 provides interface to run external process from your application in Linux.
We sell source code of this library as is, without future updates and technical support according to perpetual non-exclusive license. You pay once and can use this library in your software and hardware products without limits. Please read the license agreement before purchasing: LICENSE. You can buy technical support service for this product.
ChildProcess C++ library version 1.0.4 provides interface to run external process from your application in Linux.
We sell source code of this library as is, without future updates and technical support according to perpetual non-exclusive license. You pay once and can use this library in your software and hardware products without limits. Please read the license agreement before purchasing: LICENSE. You can buy technical support service for this product.
Purchase options
You can by this software online by card or you can buy the software by bank transfer. Bank transfer available only for companies. To buy software by bank transfer please send us request to info@constantrobotics.com. Also, you can buy technical support service for this product.
Downloads
Programmer’s manual: DOWNLOAD
Overview
ChildProcess C++ library provides interface to run external process from your application in Linux. The library runs external process (child process) and returns control to you. The library doesn't show child process output, just runs. Also the library provides function to stop child process (process will be terminated automatically in ChildProcess class destructor). The library doesn't have third-party dependencies and is built with C++17 standard.
Simple interface
namespace cr
{
namespace utils
{
/// Child process class.
class ChildProcess
{
public:
/// Get library version.
static std::string getVersion();
/// Class constructor.
ChildProcess();
/// Class destructor.
~ChildProcess();
/// Create a child process and run given command with provided arguments.
bool run(std::string command, std::string params = "");
/// Close child process.
void close();
};
}
}
Simple example
#include <iostream>
#include <string>
#include <chrono>
#include <thread>
#include "ChildProcess.h"
int main(void)
{
std::cout << "ChildProcess v" <<
cr::utils::ChildProcess::getVersion() << " example" <<
std::endl << std::endl;
std::string command = "";
std::cout << "Enter command: ";
std::cin >> command;
std::string arguments = "";
std::cout << "Enter arguments: ";
std::cin >> arguments;
// Run child process.
cr::utils::ChildProcess process;
if (!process.run(command, arguments))
return 0;
// Wait 2 seconds for example.
std::this_thread::sleep_for(std::chrono::seconds(2));
// Close child process.
process.close();
return 1;
}