C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: 起動したブラウザを閉じる方法


(過去ログ 127 を表示中)

[トピック内 6 記事 (1 - 6 表示)]  << 0 >>

■75776 / inTopicNo.1)  起動したブラウザを閉じる方法
  
□投稿者/ ひろや (1回)-(2015/05/01(Fri) 11:32:02)

分類:[.NET 全般] 

Microsoft Visual Basic 2010 Expressを使用しています。
プログラムの中である ホームページアドレスにアクセス必要があります。


System.Diagnostics.Process.Start("http://www.dummy.com/dummy.php") を実行すると 既定のブラウザ IEが起動し目的が達成されます。

ただ、処理後にこの起動したブラウザを終了したいのですが、方法がネットでヒットしません。
方法をご存知の方お願いいたします。
引用返信 編集キー/
■75778 / inTopicNo.2)  Re[1]: 起動したブラウザを閉じる方法
□投稿者/ 魔界の仮面弁士 (305回)-(2015/05/01(Fri) 12:01:15)
No75776 (ひろや さん) に返信
> ただ、処理後にこの起動したブラウザを終了したいのですが、方法がネットでヒットしません。

一応、Process クラスの CloseMainWindow メソッド等を使うといった選択肢が
ありますが、「既定のブラウザ」に登録された任意のブラウザが対象となると、
一般的な終了手段は無いと思います。

というのも、起動されるプロセスが
 『別途起動済みのブラウザ本体に URL を伝え、自身はすぐに終了する』
というタイプであった場合には、閉じるべき相手が既に居ない可能性があるためです。

「既定のブラウザ」を使わず、起動対象を InternetExplorer 固定とするのであれば、
InternetExplorer の Quit メソッドを呼び出す手法が使えるのですけれどね。
引用返信 編集キー/
■75779 / inTopicNo.3)  Re[2]: 起動したブラウザを閉じる方法
□投稿者/ ひろや (2回)-(2015/05/01(Fri) 12:04:35)
ご回答ありがとうございます。

既定のブラウザがIEになっておりますし、他のブラウザもインストールされていませんので問題ありません。

引用返信 編集キー/
■75780 / inTopicNo.4)  Re[1]: 起動したブラウザを閉じる方法
□投稿者/ WebSurfer (560回)-(2015/05/01(Fri) 12:29:04)
No75776 (ひろや さん) に返信

> ただ、処理後にこの起動したブラウザを終了したいのですが、方法がネットでヒットしません。
> 方法をご存知の方お願いいたします。

開くのは IE そのものでなくてもいいのであれば、.NET Framework の
WebBrowser(shdocvw.dll のマネージラッパー)をつかってはいかがで
すか?

WebBrowser クラス
https://msdn.microsoft.com/ja-jp/library/system.windows.forms.webbrowser.aspx


WebBrowser では機能が不足するのであれば拡張することもできます。詳
しくは下記のページおよびその中に記したリンク先を見てください。

WebBrowser の拡張
http://surferonwww.info/BlogEngine/post/2012/07/01/extension-of-webbrowser-control.aspx
引用返信 編集キー/
■75782 / inTopicNo.5)  Re[3]: 起動したブラウザを閉じる方法
□投稿者/ 魔界の仮面弁士 (306回)-(2015/05/01(Fri) 13:28:00)
No75779 (ひろや さん) に返信
>>> System.Diagnostics.Process.Start("http://www.dummy.com/dummy.php")
例示する場合は、dummy.com ではなく example.com を使いましょう。
http://wa3.i-3-i.info/word11843.html


> 既定のブラウザがIEになっておりますし、他のブラウザもインストールされていませんので問題ありません。
であれば、こんな感じ。

'Private WithEvents IE As InternetExplorer
Private IE As Object
-------
IE = CreateObject("InternetExplorer.Application")
IE.Visible = True
IE.Navigate2("http://www.microsoft.com/")
-------
IE.Quit() '終了
System.Runtime.InteropServices.Marshal.ReleaseComObject(IE)
-------

なお、起動した IE をユーザーが終了させていた場合、
その後の処理(Quit メソッド等)の呼び出しは失敗します。

ユーザー操作で閉じられたかどうかを判断する必要がある場合には、
InternetExplorer の OnQuit イベントで検知することができます。
引用返信 編集キー/
■75786 / inTopicNo.6)  Re[2]: 起動したブラウザを閉じる方法
□投稿者/ ひろや (3回)-(2015/05/01(Fri) 14:31:40)
魔界の仮面弁士様ご回答ありがとうございます。

思い通りの動作を致しました。

また、example.com のことも勉強になり 重ねてお礼申し上げます。
解決済み
引用返信 編集キー/


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

このトピックに書きこむ

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

管理者用

- Child Tree -