web-dev-qa-db-ja.com

Googleを起動する方法Chrome C#を使用して特定のURLのタブ

Google Chromeでカスタムアプリから特定のURLを読み込んでタブ(新しいウィンドウではなく)を起動する方法はありますか?私のアプリケーションはC#(.NET 4 Full)でコーディングされています。

C#からSOAPを介していくつかのアクションを実行しており、正常に完了したら、ユーザーにブラウザーを介して最終結果が表示されるようにします。

このセットアップ全体は社内ネットワーク向けであり、一般消費向けではありません。したがって、特定のブラウザのみをターゲットにする余裕があります。さまざまな理由でChromeのみをターゲットにしています。

31

chrfin's 応答の簡略化として、Chromeがインストールされている場合は実行パス上にある必要があるため、単に呼び出すことができます:

Process.Start("chrome.exe", "http://www.YourUrl.com");

Chromeが既に開いている場合、新しいタブを開くと、これは期待どおりに動作するようです。

41
Dylan Watson
// open in default browser
Process.Start("http://www.stackoverflow.net");

// open in Internet Explorer
Process.Start("iexplore", @"http://www.stackoverflow.net/");

// open in Firefox
Process.Start("firefox", @"http://www.stackoverflow.net/");

// open in Google Chrome
Process.Start("chrome", @"http://www.stackoverflow.net/");
30
user1788956

PDATE: Chrome beeingがLocalAppData


Daniel Hilgarthにchromeで新しいタブを開くことに同意しても、引数としてURLを指定してchrome.exeを実行するだけです。

Process.Start(@"%AppData%\..\Local\Google\Chrome\Application\chrome.exe", 
              "http:\\www.YourUrl.com");
19
ChrFin

ユーザーがChromeを持っていない場合、次のような例外がスローされます。

    //chrome.exe http://xxx.xxx.xxx --incognito
    //chrome.exe http://xxx.xxx.xxx -incognito
    //chrome.exe --incognito http://xxx.xxx.xxx
    //chrome.exe -incognito http://xxx.xxx.xxx
    private static void Chrome(string link)
    {
        string url = "";

        if (!string.IsNullOrEmpty(link)) //if empty just run the browser
        {
            if (link.Contains('.')) //check if it's an url or a google search
            {
                url = link;
            }
            else
            {
                url = "https://www.google.com/search?q=" + link.Replace(" ", "+");
            }
        }

        try
        {
            Process.Start("chrome.exe", url + " --incognito");
        }
        catch (System.ComponentModel.Win32Exception e)
        {
            MessageBox.Show("Unable to find Google Chrome...",
                "chrome.exe not found!", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
    }
5
C0LD