john1990_1 Ответов: 0

Как открыть ссылку в новом окне (а не только в новой вкладке) в браузере по умолчанию или chrome?


Я хочу взять с собой новое окно из браузера по умолчанию (или Chrome) спереди в не развернутом окне (Google Translate) пользователь сразу же вводит его и видит перевод, а затем пользователь закрывает его и продолжает свою работу.

Приведенный ниже код работает, но открывает только новую вкладку, а не целое новое окно.

Я также хочу установить окно рядом с положением мыши и в умеренном размере относительно монитора.

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

var prs = new ProcessStartInfo("chrome.exe");
            prs.Arguments = "http://translate.google.com";
           Process p= Process.Start(prs);
           Program.setFocusToProcess(p);


public static void setFocusToThisProcessName(string name)
        {
            Process[] Processes = Process.GetProcessesByName(name);

            //if (Processes.Length == 0)
            //{
            //    MessageBox.Show("The program: '" + name + "' isn't running and can't be focused on.", "TranslateProgram");
            //    return;
            //}



            foreach (Process process in Processes)
            {
                setFocusToProcess(process);
            }
        }


        static void setFocusToProcess(Process process)
        {
            if (process.MainWindowHandle == (IntPtr)0x00000000)
            {
                return;
            }

            const int SW_RESTORE = 9;



            //if(IsIconic(process.MainWindowHandle) != 0)
            //{
                ShowWindow(process.MainWindowHandle, SW_RESTORE);
            //}

            SetForegroundWindow(process.MainWindowHandle);

            BringWindowToTop(process.MainWindowHandle);

            SetFocus(new HandleRef(null, process.MainWindowHandle));
        }




Я обнаружил, что это открывает новое окно:
Process process = new Process();
process.StartInfo.FileName = @"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe";
process.StartInfo.Arguments = "google.com" + " --new-window";
process.Start();

0 Ответов