Usama Iftikhar Butt Ответов: 1

Я хочу скрыть консоль и ввод от пользователя C/C++


Всем привет!
Я хочу написать книгу. c/c++ код, который будет скрывать экран консоли и работать в фоновом режиме, и я успешно это делаю. Теперь я пытаюсь написать код, который работает в фоновом режиме, а также принимает входные данные от пользователя.

Что я уже пробовал:

Я использую этот код, чтобы скрыть консоль
#include "stdafx.h"
#include"iostream"
#include "windows.h"
using namespace std;

void main() {
	//These four lines hides the console
	HWND window;
	AllocConsole();
	window = FindWindowA("ConsoleWindowClass", NULL);
	ShowWindow(window, 0);

	int a;
	cin >> a;    //Here i have want input to do some action
}

Может ли кто-нибудь помочь мне решить эту проблему? Я использую visual studio 2013

1 Ответов

Рейтинг:
8

OriginalGriff

Вы не можете принимать входные данные от пользователя, если окно вашего приложения не имеет фокуса: а "скрытое в фоновом режиме" приложение, которое не показывает окно, не может иметь фокуса, поэтому вы не можете получить пользовательский ввод!

Почему ты пытаешься это сделать? Вы будете запутывать пользователей бесконечно, если вам это удастся...


Usama Iftikhar Butt

Сэр, я хочу сделать такую программу, как командная строка. На самом деле я хочу установить некоторые команды/ярлыки в своей программе. Поэтому, когда я применяю эти команды, программа будет выполнять некоторые действия.

OriginalGriff

Это не имеет большого смысла - зачем вам пытаться скрыть командную строку?

Usama Iftikhar Butt

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

OriginalGriff

Это ужасно сложно: вам нужно начать читать о глобальных крючках - но даже не думайте разрабатывать их без использования виртуальной машины для отладки / тестирования, так как любая маленькая ошибка и вся ваша система станет очень нестабильной...