Exemplo n.º 1
0
extern "C" int k_kill_process_by_id(int pid, int timeout /*= 0*/)
{
	boost::filesystem::path cmdpath(getenv("ComSpec"));
	char kill_process_arg[64] = { 0 };
	std::sprintf(kill_process_arg, kill_process_format, timeout + 1, pid);
	koo_process vp("killtask", cmdpath.parent_path().string(), "taskkill.exe", kill_process_arg);
	return vp.start_once(timeout);
}
Exemplo n.º 2
0
extern "C" int k_kill_process(const std::string& process_name, int timeout /*= 1000*/)
{
    boost::filesystem::path cmdpath("/usr/bin");
    char kill_process_arg[64] = {0};
    std::sprintf(kill_process_arg, kill_process_format, process_name.c_str());
    koo_process vp("killtask", cmdpath.parent_path().string(), "killall", kill_process_arg);
    return vp.start_once(timeout);
}
Exemplo n.º 3
0
Arquivo: zone.c Projeto: velour/mid
static void pipeadd(Pipe *p, char *cmd, char *fmt, ...)
{
	char buf[Bufsz];
	va_list ap;

	va_start(ap, fmt);
	int n = vsnprintf(buf, Bufsz, fmt, ap);
	va_end(ap);

	char cmdbuf[Bufsz];
	int cmdsz = cmdpath(cmdbuf, Bufsz, cmd);

	if ((n+4+cmdsz) > Bufsz - p->n)
		fatal("Buffer is too small");

	strcat(p->cmd + p->n, cmdbuf);
	strcat(p->cmd + p->n + cmdsz, " ");
	strcat(p->cmd + p->n + cmdsz + 1, buf);
	strcat(p->cmd + p->n + cmdsz + 1 + n, " | ");
	p->n += n + cmdsz + 4;
}