Согласно этому примеру , я запускаю windows cmd.exe с CreateProcessAsUser.
И я перенаправляю его дескриптор на мое консольное приложение, поэтому мое приложение
выглядит просто понравился cmd.exe.
У меня вопрос, есть ли возможность разрешить моему консольному приложению использовать
автозаполнение вкладки, как и в оригинальном cmd.exe?
То, что он делает сейчас, когда я нажимаю клавишу табуляции, это только для ввода «пробела табуляции».
Вот фрагмент кода для этого примера:
PROCESS_INFORMATION pi;
STARTUPINFO si;
// Set up the start up info struct.
ZeroMemory(&si,sizeof(STARTUPINFO));
si.cb = sizeof(STARTUPINFO);
si.dwFlags = STARTF_USESTDHANDLES;
si.hStdOutput = hChildStdOut;
si.hStdInput = hChildStdIn;
si.hStdError = hChildStdErr;
if(!CreateProcess(NULL,"C:\\Windows\\System32\\cmd.exe",NULL,NULL,TRUE,
CREATE_NEW_CONSOLE,NULL,NULL,&si,&pi))
DisplayError("CreateProcess");
// Set global child process handle to cause threads to exit.
hChildProcess = pi.hProcess;
// Close any unnecessary handles.
if (!CloseHandle(pi.hThread)) DisplayError("CloseHandle");