[英]Open a browser window as a pop under in C#
我正在嘗試使用C#將瀏覽器作為彈出窗口打開。 基本上,我正在檢測用戶何時啟動瀏覽器,並且我想在此之后立即打開一個新的瀏覽器窗口,該窗口位於用戶打開的窗口下方。 這是我到目前為止的內容:
url = "example.com";
Process[] pname = Process.GetProcessesByName("chrome");
if (pname.Length == 0) // if the user didn't start chrome
{
chrome = false;
}
else // if chrome is running
{
if (!chrome) // if the browser wasn't opened before and it was opened just now.
{
Process process = new Process();
process.StartInfo.FileName = "chrome";
process.StartInfo.Arguments = url;
process.StartInfo.WindowStyle = ProcessWindowStyle.Minimized;
process.Start();
//Process.Start("chrome", url);
}
chrome = true;
}
但這有時是在新窗口中,有時是在新選項卡中將其打開。 也許我應該使用其他方式啟動瀏覽器或其他方式? 謝謝!
調用外部程序(在這種情況下為Chrome)時,您必須“遵循其規則”。 通過查看Chrome參數( 在此處列出 ), --new-window
提供了您想要的。 因此,您必須在代碼中執行以下更改:
process.StartInfo.Arguments = url + " --new-window";
如果要完全控制,也許應該創建自己的瀏覽器(例如WebBrowser類 )。
我建議使用URL作為文件名。 因為這樣做時,系統將自動檢測到該路徑是Web位置,並啟動用戶默認的瀏覽器。 這還將確定瀏覽器是否已經打開,如果已經打開,則在該窗口中打開而不是啟動新的瀏覽器。
與啟動Internet Explorer或Chrome的程序相比,大多數人更喜歡這樣做。
您的問題有點含糊,因此,如果這是您要尋找的答案,請告訴我們。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.