• 締切済み

Windowsアプリからブラウザ起動と終了

いつもお世話になっております。 Windowsアプリケーション開発を行うことになり、技術的に実現可能か否かの調査を行っております。 ご存知の方、どうかご教授ください。 ■やりたいこと WindowsアプリケーションからPC内のデフォルトブラウザを起動し、特定URLを表示する。 そのブラウザのURLにてログインなどの処理を行い、パラメータを受け取る。 ブラウザを終了させ、Windowsアプリケーションに戻る。 ■環境 Windows7 or 8 .NET Frameworkは必要に応じてインストール可能 他、必要な環境があれば、Windows標準コンポーネントであればインストール可能 どうぞよろしくお願いします。

みんなの回答

  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.2

う~ん、トータルで考えると難しそうだねぇ。 >PC内のデフォルトブラウザを起動し、特定URLを表示する。 これはWindowsに設定されているhttpプロトコルのデフォルトハンドラーを起動するというのでできる。 規定のブラウザという奴やね。 > そのブラウザのURLにてログインなどの処理を行い、パラメータを受け取る これはあるいは無理かも知れない。そのブラウザがHTML部分をどう保持しているか、外部プログラムからちょっかいをかける方法があるかどうかは分からないからだ。 IE限定とかそういう風にしてしまえばなんとかなると思うけど、 そしたら上のデフォルトブラウザを起動とつじつまが合わないし・・・・。 また、動作させる環境が社内ならいいけど、実はWindows7にはIEがバンドルされていないエディションがあって、それだとIEを起動しようとするとエラーになってまう。 > ブラウザを終了 これは最初にプログラムからブラウザを子プロセスとして起動させるなら子供の制御はできるので簡単だ。 やりたい事自体は単にどっかのWebサイトでログイン認証をしてその認証情報を得るという事っぽいので、Windowsアプリケーションに内部でIEコンポーネント(アプリケーションのフォームの中にIEの中身を表示する機能がある)を動作させてやりとりするっちゅう方が良いかも知れない。

fujio5031
質問者

お礼

推測されるとおり、外部サイトでのログイン認証を取得したいです。 ただ、ログイン手続き(Web上でのID/Passを入力)はユーザ自身が行います。 なので、ある程度できることがわかりました。 ただ、その具体的な手法がわかりません。 ご教授いただけないでしょうか。 ※やはりWebViewコンポーネントを利用したほうが簡単なのでしょうか。

  • kamikami30
  • ベストアンサー率24% (812/3335)
回答No.1

可能です。 ただ、無駄に面倒そうです。 やりたいことの目的がいまいちわかりません。何らかのwebページの希望の情報を取得出来ればいいんですかね? >PC内のデフォルトブラウザ これは…面倒そうですよ。 ユーザーによってデフォルトブラウザは違いますから、Windows7と8で動作するブラウザ全てに対しての処理を書き、デフォルトブラウザを判定したあとにいずれかの処理を行うと言う意味ですね。 Webから情報取ってくるだけなら、デフォルトブラウザにする必要性が全然ないと思うんですよね。 ブラウザが良いならIEでいいんじゃないですかね?最初からインストールされてますし。 あと、環境は動作環境だけじゃなくて、開発環境も書いた方がいいんじゃないかと思います。

fujio5031
質問者

お礼

やりたいことがうまく伝わっていないようで失礼しました。 回答No.2の推測通りで、外部サイトのログイン認証をWindowsアプリから取ってくるということでした。 ご回答ありがとうございました。

関連するQ&A

  • .NET Frameworkって一体何?

     近年、.NET Frameworkという言葉が流行っていますが、これは一体何なのでしょうか?  従来のようにWin32APIやMFCを使ったアプリケーションとは、かなり質が異なるもののように思われます。  .NET Frameworkに対応したアプリケーション開発ができると、どのような利点が生まれるのでしょうか?  また、次期WindowsといわれるLonghornでは、.NET Frameworkが非常に重要視されているように思います。 そして、こうした時代の流れを察するに、Win32APIやMFCのみでのアプリケーション開発をしてきた私も、.NET Frameworkとは一体何かを知らなければいけないと思うようになりました。  私はまだ何も確証は持てないのですが、.NET Frameworkはコンポーネント技術と何かしら関係があるように思います。しかし、そのような気がするだけで、何がどうなって、.NET Frameworkが構成されているのかまったくわかりません。.NET Frameworkがあると、将来どのようなことが実現可能になるのですか?

  • c#で作ったアプリケーションを他のPCで起動するには?

    c#で作ったアプリケーションを他のパソコンにて起動させたいのですが、起動せずに、動作を停止してしまいます。 対処としては、開発したパソコンと同じ設定にすることが一番だろうというのはわかるのですが、アプリケーションをインストールする段階で、その設定等を行う方法がないか質問させていただきました。 こちらの開発環境は、 OS : windows vista 開発ソフト : visual studio 2008 profetional Edition(c#にて) アプリケーションの対応framework:.NET Framework 3.5 追加した参照設定:Mysql.Data にて開発しました。 もし何かお分かりになる方、もしくは参考にできるサイト等がありましたらお教えください。 また、こちらの環境に足らない部分がありましたら、補足させていただきますので、ご意見お願いします。

  • ブラウザから直接起動するのを禁止する。

    こんにちは、Makotoと申します。 Servlet+Jspの開発を行っているのですが、 ログインの時にLotus Notesのアプリケーションから、IEをキックしてWebの初期画面を表示させるようにしています。 環境は weblogic server 7.0 struts1.02 lotus notes です。 流れは以下のようになっています。 Notesアプリケーションから URLとパラメータにユーザIDをセット ↓のようなURLを作成し、 http://192.168.37.141:7001/qis/InitLinkMenuAC.do?UserID=1GF7BPICJK9UICJK9ULMB その後、IEを立ち上げるようにしています。 しかし、上記のURLを直接IEを立ち上げてアドレスバーに代入すると、初期画面が立ち上がってしまいます。 直接IEから立ち上げるのを禁止させることはできないのでしょうか?

  • VS2005 インストーラ時の起動条件について

    いつも参考にさせて頂いております。 今回、VS2005でアプリを開発致しました。 現在、そのアプリのInstallerを作成中です。 インストール環境にFrameWork2.0が入っているか否かの判断はなんとか出来るようになりました。 もう一つ、気になるモジュールがあります。 「Microsoft .NET FrameWork2.0 日本語 Language Pack」です。 こちらもやはりインストールした方が良いのでしょうか? また、もしインストールするとなった場合、FrameWork2.0の様に インストール済みか否かの判断は可能なのでしょうか? 色々質問を並べてすみません。 ネットで色々調べたのですが、VS2005についてはあまり情報がございません。 経験済みの人、知識のある方がいらっしゃいましたら、ご教授お願い致します。

  • iphoneのブラウザアプリのセキュリティー

    iphoneのブラウザsafariや自分でインストールしたブラウザアプリは windowsのようにセキュリティソフトを入れてなくても大丈夫ですか? windowsでいうとIEなどで不正なURLにアクセスするとブラウザが改ざんされたり落ちたり、 立ち上がらなくなるブラウザクラッシャー(不正なURL)ってありますよね? windowsならウイルスバスターなどがブロックしたりしてくれますが、 iphoneのsafariはセキュリティーソフトを入れてないのに大丈夫ですか?

  • iアプリのブラウザ起動について

    はじめまして。 JAVAでiアプリの開発をしているのですが、わからないことがありますので、 ぜひお力添え願えませんでしょうか。ちなみに、JAVAでの開発は初めてです。 <開発環境> doja5.1 eclipse windows XP <質問> iアプリ起動時に、外部からUART通信にてHTMLデータを受信します。 受信したHTMLデータは、スクラッチパッドに格納します。 その後、スクラッチパッド上に格納したHTMLデータを読み込んで、ブラウザで起動したいのですが、 ここでブラウザの起動がうまくいっていません。 以下のようなコードでやってみましたが、うまくっていません。 launch(LAUNCH_BROWSER,           new String[]           {"scratchpad:///0;pos=0"}); や launch(LAUNCH_BROWSER,           new String[]           {"<HTML>~~~</HTML>(HTMLデータを埋め込み)"}); などしてみましたが、うまくいかず・・・。 ほかの方法があるかとネットや書籍を探して見ましたが、そういった類のコードが 見当たらなかったため、質問させていただいております。 このようなことができるのかもわからないまま開発しております。 どうかお力を貸してください。

    • ベストアンサー
    • Java
  • あるアプリから別のアプリの起動が遅い

    メッセンジャーで送られてきたURLをクリックしてブラウザを開く、ランチャーに登録したアプリを開く、といった、あるアプリから別のアプリを開こうとするときの動作が、とても遅くなってしまいました。 遅い、というより、長いタイムラグができるようになった、といった方が正確でしょうか。 ブラウザやランチャーを再インストールしたり、別のものを使ってみたりと、いろいろと試してみたのですが、やはりタイムラグが生じるので、個々のアプリケーションの問題ではないようです。 どうすれば解決できるでしょうか。 よろしくお願いします。

  • Visual Basic 2013

    こんばんは。 Visual Basic 初心者です。 簡単なアプリケーションを作りました。 作成したマシンでは動作するのですが、 その実行形式ファイル(.exe)を別のパソコンで実行できませんでした。 ちなみに、.NET Framework 4.0環境でアプリを作り、 別のパソコンにも.NET Framework 4.0がインストールされています。 開発環境と別のパソコンの環境は以下の通りです。 【開発環境】 OS: Windows 8.1 Pro 64bit   .NET Framework 4.0 【別のパソコン】 OS: Windows 8.1 Pro 64bit   .NET Framework 4.0 インストール済み 以上ですが、動作しない原因わかれば教えてください。

  • VC++で静的リンクしたアプリを作りたい

    Microsoft のVisual Studio 2012 を使用しています。VC++2012 を使用して静的リンクしたアプリケーションを作りたいのですが、静的リンクを行う設定方法がわかりません。言い換えると .Net FrameWork がない環境でも動くアプリケーションを作りたいのです。 詳細は、MSN 相談箱 QNo.8057365(投稿日時 - 2013-04-24 12:53:43)を参照ください。 現在は、次のMSDNの技術資料「Deployment in Visual C++」 http://msdn.microsoft.com/ja-jp/library/dd293574.aspx に記載されている2番目の方法Local Deployment(ローカル配置)に記載されている必要な DLL ファイルをコピーする方法で実現していますが、Microsoft に相談したところ、次のように言われています。 『VC++ 2012 のLocal Deployment を使ってアプリケーション プログラムの開発を行うのは良いが、一旦開発が成功した後はLocal Deployment の使用を禁止する。』 以上の経緯から、静的リンクした VC++ 2012 アプリケーション プログラムを作る必要があります。具体的な形態は、Windows PE 3 で起動したPC でVC++ 2012 で開発したアプリケーション プログラムを動かします。 Visual Studio 2012 でプロジェクトを定義するとき、「静的リンク アプリケーション」指定の必要があると考えるのですが、その方法がわかりません。どうかご教示をお願いします。

  • C# の Windows フォーム アプリケーション開発環境

    私が思うに、C# 自体は .NET Framework を必ずしも前提としてはいませんが、.NET Framework を前提としていない Windows フォーム アプリケーション開発環境はありますか。

専門家に質問してみよう