запустить .exe файл в фоновом режиме, используя cmd

Я запускаю простую программу CPP для чтения символов из консоли и сохранения в файле таким образом, что они разделены точками …

 #include<stdio.h>
#include<conio.h>
#include<iostream.h>
#include<fstream.h>

void main()
{
char content[2] = {'a','.'};
ofstream o("filename",ios::out|ios::app);
while(1)
{
if(content[0]=='q')
{
break;
}
content = getche();
out<<content;
}
out.close();
}

Теперь я хочу, чтобы эта программа рассматривалась только в диспетчере задач как фоновый процесс и не была видна пользователю (запущена с использованием cmd) …

Я использую start команда с минимальным приоритетом. Но бесполезно. Некоторые из подобных вопросов не были полезны для меня. Поэтому, пожалуйста, предоставьте команду apt, с помощью которой эта программа будет работать как фоновый процесс.

-1

Решение

Вы хотите сказать, что не хотите, чтобы программа порождала консоль? совсем? Если это так, вам придется изменить свою основную функцию с:

int main()

Для того, чтобы:

#include <Windows.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nShowCmd)

Использование этой новой основной функции предотвратит появление любой консоли при запуске вашей программы.

Если вы хотите, чтобы консоль появлялась в начале вашей программы, и она закрывалась на полпути, вам придется самостоятельно создать графический интерфейс для консоли. Я бы посоветовал FLTK в качестве библиотеки GUI. Это не очень хорошо для более продвинутого графического интерфейса, но это подойдет, если все, что вы хотите сделать, это иметь простую консоль.

1

Другие решения

вы можете попробовать запустить свой exe используя nsExec плагин.
выполнение внутри этого приложения не должно показывать никакого окна консоли

Другое решение состоит в том, чтобы запустить ваш progeam как службу Windows, а не как приложение.

0

По вопросам рекламы [email protected]