• 締切済み

プログラムからブラウザにJSを実行させる方法

cやc++などタスクバーに表示されるプログラムから、起動中のブラウザにjavascriptコードを実行させる方法があれば教えてください それとブラウザ単体で動的にjavascriptを実行するには、 ・アドレスバーに打ち込む ・コンソール画面に打ち込む(IE7とかの場合F12押下して出てくるやつ 以外に方法があるのでしょうか? 回答よろしくお願いいたします。

みんなの回答

  • luka3
  • ベストアンサー率74% (297/399)
回答No.1

Cではやったことありませんが、WSHでのやり方を例示します。 -- ここから var Shell = WScript.CreateObject("Shell.Application"); var WindowsShell = Shell.Windows(); // 現在開いているIEを調べる for (var i=0; i<WindowsShell.Count; i++) {  if (WindowsShell.item(i).FullName.match(/iexplore.exe/i)   && WindowsShell.item(i).document.URL == "http://www.yahoo.co.jp/") {   // IEに動的にJSを送り込む   var d = WindowsShell.item(i).document;   var s = d.createElement('script');   s.type = "text/javascript";   s.text = "document.sf1.p.value = 'test from JS';";   d.body.appendChild(s);  } } -- ここまで ※全角空白は半角かタブに置換してください。 上記を test.js などとして保存し、IEでyahooのトップページを開いてから test.js をダブルクリックしてください。 検索文字列入力欄に test from JS と出ましたでしょうか。 C++でのブラウザウインドウの操作はこちらを参考にしてください。 ・VC++ WebBrowser COMメモ(Hishidama's VC++ WebBrowser-control Memo) http://www.ne.jp/asahi/hishidama/home/tech/vcpp/webbrowser.html 正式名称は忘れましたがキモは「SHDOCVW.DLL」ですので、 これを頼りに検索すればいろいろなサンプルが見つかると思います。 なおこの方法はIEもしくはIEコンポーネントを利用しているもの限定になります。 例えばDonutRAPTなどでも動きますが、….FullName.match(/donut.exe/i) といった修正が必要です。 ちなみに、少々強引なことを言うと、C/C++からこのWSHを呼び出してしまえば 「WindowsShell.item(i).document.sf1.p.value = 'test from JS'」とかやることも可能です。 ≫それとブラウザ単体で動的にjavascriptを実行するには こちらはちょっと漠然としててどうしたいのかよくわかりませんが、 「動的 javascript」で検索すれば、上記と同じサンプルが出てきます。

関連するQ&A

  • 一定の間隔でプログラムを実行させたい

    PHP,MYSQLを使って、一日置きの間隔で 更新のプログラムを実行させたいのですが、 JAVASCRIPTではブラウザを開いていないと 実行されない為、他の方法を考えています。 簡単な方法で何かないでしょうか? よろしくお願いします。

    • ベストアンサー
    • MySQL
  • C言語で書いたプログラムをWEBブラウザ上で実行するにはどうしたらいいのでしょうか?

    地図上で指定地点から距離10キロ以内にある店舗を検索するというプログラムを組みたいのですが、Cで組んだプログラムをWEBブラウザ上の地図をクリックして実行したいのですが、どのようにしてWEBブラウザ上でプログラムを実行できるのでしょうか?教えてください。よろしくお願いします。

  • JavaScriptで「実行中のブラウザ」の確認

    JavaScriptでプログラムを組んでいます。 OSはWin7 Home 64bit、通常使うブラウザは「FireFox」です。 ブラウザによって実行内容を変えたいため、「navigator.appName」で情報を得るのですが、 どのブラウザでも「Netscape」(FireFoxのことだと思います)になってしまいます。 どうも「navigator.appName」は通常使うブラウザの値が設定されているようです。 「通常使うブラウザ」ではなく、「実行中のブラウザ」の情報が欲しいのです。 いい方法があれば、教えてください。

  • こんなブラウザ(?)知りませんか?

    チラッと見た程度なので詳しくは知らないのですが、 ある人が、自分の個人ファイルから何らかのプログラムを起動させて、IEとは違うものでインターネットを見ていました。プログラムと判断したのは、何かをダウンロードするときに「開く」「閉じる」と表示されるようなやつが出てきていたからです。そのソフトは、アドレスバー見たいなやつが2つ(2つともがアドレスバーではないようです)出ているのが確認できました。情報が少ないですが、IEと表示のされ方がかなり違ったので、気になったのですが教えてください。

  • Webブラウザの閉じるボタン無効化についての質問

    お世話になります。 現在、ASP.NET(C#)にてIEブラウザの閉じる(×)ボタンを 非表示にするあるいは無効にする処理を加えようとしています。 現行では、JavaScriptのonbeforeunloadにて閉じるボタン 押下時の処理を加えています。 しかしながら、処理を加えた後閉じるボタンを押下した際に 「このページからほかのページに移動しますか?」確認MSG が表示されてしまいまして、「OK」を押下すると画面が閉じて しまいます。 IEの閉じるボタン無効化の機能が成立しません。 そこで質問としまして、 ・IEブラウザの閉じるボタン無効化 ・IEブラウザの閉じるボタン押下時に表示される  「このページからほかのページに移動しますか?」確認MSG  を非表示にする 方法がございましたら、ご教授お願い致します。

  • ie7、ie8のアドレスバー非表示

    ie7、ie8のアドレスバー非表示 プログラミング初心者です。 Javascriptでサブウィンドウを開くとき、ie7以上では、アドレスバーを非表示にできなくなっているようですが、これを可能にする方法はありますか? 会社で、コマンドプロンプトで動かしていたソフトをGUI化したものがあるのですが、このソフトでウェブブラウザを起動すると、アドレスバーも何もなく、枠のみで表示されています。これは、GUI部分のプログラム(何の言語かは知りません)でブラウザのバー表示・非表示を制御しているということになるのでしょうか? そうだとしたら、アドレスバーを非表示にすることが可能ということになるのでしょうが、方法が分かりません。 方法はJavascriptでなくてもかまいません。 教えてください。よろしくお願いします。

  • プログラムのGUI部分をブラウザで代用する手段

    rubyスクリプトを使用してデータ処理を行っております。 このプログラムのGUI部分をブラウザで代用することは可能でしょうか? もし可能であればどのような手段があるのかご教示いただきますと嬉しいです。 # ブラウザを使用せずに、rubyのGUIライブラリを使用する方法はここでは除外してください。 ブラウザ上で必要なパラメータを設定し、実行ボタン押下でこれをスクリプトに渡してスクリプト実行、処理結果(テキスト)をブラウザ上に表示させたいです(GUIとスクリプト間のデータの受け渡しは標準入出力利用? またはパラメータ用のデータファイル経由?) ブラウザ上で使用したいGUI部品は、ボタン、テキストエリア(入力用、表示用)、ラジオボタン、コンボボックス、(PC内の)ファイル選択ダイアログ等 実行環境 ・Windows XP以降(XPは事情によりサポートが切れても使用予定) ・ネットワークに接続せずPC単体で使用  htmlファイルをクリックしてGUIを起動するイメージ ・ブラウザはPCに標準で入っているインターネットエクスプローラ ・そのPCでhttpサーバー等は動かせません javascript等の使用で上記内容を実現可能でしょうか? よろしくお願いします。

  • ログアウト処理でWebブラウザを閉じる処理

    Webメール等で、ユーザがログアウトを押下すると、cgiが動作して Webブラウザが閉じるものがありますが、cgiはどのようにして Webブラウザを閉じているのでしょうか? JavaScriptでwindow.close()を実行すればブラウザが閉じますが、 ユーザに確認メッセージが出ますよね。あれはうっとおしいので やめにしたいのです。 ちなみに私の環境はIE5.5(SP1)です。

    • ベストアンサー
    • CGI
  • ほとんどのブラウザに対応したキーイベントのプログラムをJavascri

    ほとんどのブラウザに対応したキーイベントのプログラムをJavascriptで書きたいのですが、 IEではwindow.eventは使えましたがFireFoxなどでは定義されていないエラーになります。 ブラウザごとのキーイベントについて知りたいです。 IE,FireFox,Safari,Chrome,Opera,Netscape,Other

  • プログラムでブラウザソフトを指定する。

    お世話になります。 例えば、サーバにHTMLファイルを置いておきます。 クライアントにIEとネットスケープの2つのブラウザソフトが入っている時、そのHTMLファイルを読みに行った時にプログラム上(Javascript等)で、どちらのブラウザで開くかを強制的に指定する事はできるのでしょうか??

    • ベストアンサー
    • HTML

専門家に質問してみよう