Скрыть окно процесса (mstsc) C # - PullRequest
0 голосов
/ 05 января 2019

Проблема в том, что я хочу скрыть процесс mstsc (подключение к удаленному рабочему столу). Я пытался использовать несколько методов, таких как SW_HIDE, который работает в некоторой степени.

Моя цель - запустить подключение к удаленному рабочему столу и сразу его скрыть.

Но проблема заключается в том, что оно скрывает только первое окно (окно подключения), но если я добавлю кнопку и подожду, пока она подключится, а затем щелкнет ее, окно будет скрыто. Но я хочу, чтобы это работало автоматически. Я надеюсь это имеет смысл. Спасибо!

private const int SW_HIDE = 0;
[DllImport("User32")]
private static extern int ShowWindow(int hwnd, int nCmdShow);


Process rdcProcess = new Process();
rdcProcess.StartInfo.FileName = 
Environment.ExpandEnvironmentVariables(@"%SystemRoot%\system32\mstsc.exe");
rdcProcess.StartInfo.Arguments = "/v " + "127.0.0.2"; // ip or name of computer to connect
rdcProcess.Start();

foreach (Process process in array)
{
    if (process.ProcessName == "mstsc")
    {
        int hWnd;
        hWnd = proccess.MainWindowHandle.ToInt32();
        ShowWindow(hWnd, 0);
    }
}
...