DOBON.NETプログラミング道掲示板
(現在 過去ログ5 を表示中)

[ 最新記事及び返信フォームをトピックトップへ ]

■34910 / inTopicNo.1)  WinFormでChromeをSeleriumで操作しているが、Closeの仕方
  
□投稿者/ たんと 一般人(4回)-(2021/09/09(Thu) 18:38:46)
  • アイコン環境/言語:[.NET Framework 4.2.7] 
    分類:[.NET] 

    WinformのButton1を押すと、Chromeで特定サイトを開くようにしています。
    その後の動作はユーザー側にやってもらいたいため
    WinFormアプリ側では閉じる動作が出来ません。

    WinFormを閉じるときに、起動していたChromeDriver.exeを
    全て閉じる方法はありますでしょうか。


    private void LINK_Open(object sender, EventArgs e)
    {
    var driverService = ChromeDriverService.CreateDefaultService();
    var options = new ChromeOptions();
    driverService.HideCommandPromptWindow = true;//コマンドウィンドウ非表示
    var driver = new ChromeDriver(driverService, options);
    var LoginURL = "https://XXXXXXXXXXXXXXXXXXXXX/TEST.html";
    driver.Url = LoginURL;
    }


    1つのdriverを作成し、使いまわすのが効率良いと思うのですが
    どのようにしたら良いのか分かりません。

    public static driver; のように設定しておき、
    private void BeforeClose(){
    driver.Quit();
    driver.Close();
    }

    上記のコードをFormのCloseイベントにあわせれば出来るのでしょうか?

引用返信 削除キー/
■34911 / inTopicNo.2)  Re[1]: WinFormでChromeをSeleriumで操作しているが、Closeの仕方
□投稿者/ たんと 一般人(1回)-(2021/09/09(Thu) 18:44:01)
  • アイコンpublic static driver; のように設定しておき、
    private void BeforeClose(){
    driver.Close();
    driver.Quit();
    }

    とすることで出来ました。すみません。
解決み!
引用返信 削除キー/
■34912 / inTopicNo.3)  Re[2]: WinFormでChromeをSeleriumで操作しているが、Closeの仕方
□投稿者/ たんと 一般人(5回)-(2021/09/09(Thu) 18:50:02)
  • アイコン2021/09/09(Thu) 19:00:59 編集(投稿者)


    自分の手で閉じてしまうと
    フリーズしてしまう事が分かりました。
    やっぱり駄目でした。
    driver.Close();のところにブレークポイントを置き
    どのような状況になっているのか確認しようと思いましたが
    フリーズでNG.
    どうやったらdriverの存在を確認できるのでしょう。

    driver.quit();
    driver= null;

    ググッたら上記の情報がありました。
    としたら出来ました。たぶん。確認中です。

引用返信 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

Mode/  Pass/


- Child Tree -