• ベストアンサー

ActiveXのインストールの有無

JavaScriptで特定のActiveXコントロールのインストールの有無を調べたいと思っています。 そのようなことは可能でしょうか。 下記ページではActiveXのオブジェクトが生成できるかどうかで判断しているようですが そうではなくて特定のActiveXコントロールがインストールされているかどうかが判断できないかと 思っています。 http://kinopyo.com/blog/javascript-to-check-is-activex-enabled-in-client/

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

>そうではなくて特定のActiveXコントロールがイン であれば、あなたが、まず具体的なコントロール名の名前を書かないと。

unko347
質問者

補足

コントロールはHtml内で以下のようにして 呼んでいるのですが名前は「print.cab」 になります。 <OBJECT ID="test" CLASSID="CLSID:06889605-B8D0-101A-91F1-00608CEAD5B3" CODEBASE="http://www.test/print.cab#Version=1,0,0,0"> </OBJECT>

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ActiveX について

    ActiveXについて 質問させて頂いた者です。 貼り付け方がわからないのですが 質問番号4962554と4971905です。 ActiveXセットアップ unpacking data 100%になるまで 表示され これをどうしたら消せますか?と質問しました。 アンインストーラとFlashPlayerのインストールを教えて いただき アンインストーラはできたと思うんですが FlashPlayerが FlashPlayer5 Active Control Installer Would you like to install the Flash5 ActiveX control? とでます。 どうしたらいいのでしょうか?

  • ネットスケープ7.1のActiveXプラグイン

    ネットスケープ7.1のActiveXプラグイン ネットスケープの7.1にアクチブXのプラグインが標準で装備されたらしいですが無効にするにはどうしたらいいでしょうか?設定の詳細に■ネイティブオブジェクトスクリプト機能を有効にする■というのがあるんですがこれは関係ありますか?ヘルプを見ると無効にすればプラグインのスクリプトが実行出来なくなるらしいんですがいまいちよくわかりません。この設定を無効にすると何が変わるんでしょうか?無効にしてもフラッシュとかは関係なくそのまま動いてる感じですが。。。あとmozdev.orgの解説からの引用ですが。。。 This plugin is included with Netscape 7.1, and is configured to only work with the Windows Media Player control. This plugin can be configured to download and install ActiveX controls, which can be a security risk. This is configured using activex.js. これを自分なりに解釈すると、ネットスケープ7.1の初期設定ではWindows Media Player control以外では動作しなくて、他のアクティブXの機能をダウンロードしたりインストールしたりするには設定をいじる必要があると書いてあるんだと思うんですが合ってますか?初期設定で使ってる分にはアクティブXプラグインが有効になっていてもセキュリティの脅威は無いという事でしょうかね?それともWindows Media Player controlが使えるだけでも危ないんでしょうか?? ちょっとまとめるとこんな感じです。 ・アクティブXプラグインを無効にするには? ・プラグインはWindows Media Player control以外では動作しない? ・Windows Media Player controlだけ使うなら特に問題無し? ・ネイティブオブジェクトスクリプト機能とは何ですか? 長くなりましたが宜しくお願いします。 参考URL http://plugindoc.mozdev.org/windows.html#ActiveX

  • ActiveXコントロールの開発環境からのデバッグ方法

    VBで自作のActiveXコントロールを作成しました。 コンパイルして生成されたabcd.ocxを 自作のtest.htmファイル内に指定して、ActiveXコントロールから test.htmlに記述されたJavaScriptを制御します。 開発環境の実行を行わなわずに、test.htmをIEで表示させると、 ActiveXコントロールがダウンロードされ(すでにローカルにありますが)JavaScriptを実行することはできます。 やりたいのは、開発環境から実行させて、JavaScriptを動作させたのです。 どうすればいいのでしょうか? 環境は、VB6.0(SP5),IE5.5(SP1)です。

  • 自作したActiveXの配布&インストールがうまくできなくて困っています

    はじめましてVB超初心者です。 (そもそもVBの問題なのか、C++の問題なのかもわかりません) 小さい会社に勤めています。 現在、他のITベンダーが過去に作っていった業務アプリケーションの変更を担当させられているのですが、そのアプリにActiveXが含まれています。 結果、ActiveXも作り直しが必要ということまではわかっていて、ロジックとしてはこんな感じに作ればよいというところまでは、明確になっています。 ⇒ActiveX側の処理はIEの裏で単純なファイル操作(読み込と削除)をやっています。今回そこを少々修正します。 で、その修正対象のActiveXはATLベースでできており、CABファイルで配布されクライアントのIE上のJavaScriptから呼び出されてインストール/動作するようなブツに仕上がっています。 結果、似たようなものをVS2008の環境で作ってビルドしてdllを作って、その開発したクライアントでは正しく動く(IEからのファイル操作ができた)ことが確認できたのですが、最終的にCABファイルにして他の端末に配ってインストールさせて動かすと、うまくいきません。うまくインストールできないのです。 そこで強制的にdllをレジストリ登録してみようとしたら、「アプリケーションの構成が正しくない」と言われてしまいます。 ・開発したPC上だと、なんら問題なく動作/レジストリ登録ができます ・開発したPCと同環境PCでもNGなのでIE設定の問題ではないはずです おそらく何かが足りないのだと思っていて、修正前と修正後のソースをVS上で見えるソースですべて見比べてみたのですが、表面上での違いが全く見当たりません。 (素人考えですが、今気になっているのは、修正前のdllが129KB程度なのに対して、修正後のdllは50KBと小さくなってしまっています) 基本のキの字も判っていない素人で、誠に申し訳ないのですが、問題と思われる点ご教示いただけると非常に助かります。よろしくお願いいたします。

  • ActiveXコントロールを無効にしたいが、クライアントにあるC/Sアプリケーションも起動させたい・・・

    もし何か案がございましたら教えてください。 現在、ブラウザのセキュリティの設定で、ActiveXコントロールを無効にしております。 セキュリティの観点からもこの設定は無効にしておきたいのですが、 身内でWebサーバーを立ち上げており、ブラウザの画面でリンクをクリックすると、 事前にクライアントにインストールされているアプリケーション起動させるような仕組みを作りたいと思っております。 そこでこのようなことをActiveXコントロールが無効の状態でできるのかどうか、可能なら その方法を教えていただきたくよろしく御願いいたします。

  • サーバーにインストールできない環境でActiveXを使う方法

    初めて投稿します。よろしくお願いします。 現在ASP.NET2008(C#)で開発しています。 開発環境はLocalだったのですが、最終的にお客様に納品するときには、Windows系のレンタルサーバー(ActiveWeb)に移管する予定です。 現在開発のマシンや、客先のマシンにはOfiiceがインストールされているのですが、レンタルサーバーにはOfficeがインストールされておらず、したがって、MicrosoftのObject.Libraryが入っていません。 お客様の要望でどうしてもエクセル出力等が必要なのですが、サーバーにAxtiveXが入っていない環境で、エクセルを出力することは可能なのでしょうか。 クライアントは不特定多数ではないので、クライアントマシンにOfficeがある、という前提でもかまいません。 方法があればご教授いただければと思います。 よろしくお願いいたします。

  • お世話になっております。

    お世話になっております。 色々と調べたのですが、どうしても実現できないので質問させていただきます。 どなたかお助けください。 <やりたいこと>  VB.NET(2008)で作成し、クライアントにインストールしたアプリケーション(EXE)を、ブラウザ(IE6)から  セキュリティの警告なしで起動したい。 <現在の状況>  javascriptの"WScript.Shell"を使って起動するようにしたものの、、「このページのActiveXコントロールは安全でない可能性があり、ページのほかの部分に影響する可能性があります。ほかの部分に影響しても問題ありませんか?」というメッセージが表示されてしまう。  調べたところ、自分でActivexコントロールを作成してそれを呼び出した方がいいという結論になりました。  しかし、VB6.0がないため、とりあえずできるかどうかの確認でVS2010をインストールしました。  ただ、vs2010の場合C++でActivexをつくる必要があるようで、C++をまったく経験したことがない状態の私には垣根が高く、困っています。 <教えて頂きたいこと>  ・VB6.0をどうにか入手してそれを使った方がいいのか  ・vs2010でjavascriptから呼び出せるAxtivexを作成する方法  (プロジェクトの作成、ビルドまではできたのですが、イベントをどこにどう記入すればいいのかがわかりません)  ・上で作成したActivexをjavascriptから呼び出すためにはどうすればよいのか?  (クライアント上でしなければならないこと、javascriptからの呼び出し方法)  丸3日考えて色々やってみたのですが、どうにも時間が無駄になっている気がしてきて、ご質問させていただきました。  なにとぞよろしくお願いいたします。  

  • activeX を 使った Visual Basicのプログラム

    IteractiveBrokersという株のbrokerのサイトでサンプル プログラムを使いたいのですがよくわかりません。使用方法を下記します Use the Visual Basic VBClient Sample Program You can access the server through the ActiveX interface using the Visual Basic sample application. To run the sample you must: Install the API sample programs <-インストール完了 Configure the application to support the API components ー>configure済み Have MS Visual Studio (Visual Basic 6.0 or higher) installed on your PC. ー>visual studio 2005あり The VBClient program is a sample program that shows you how to use the TWS ActiveX control to connect to the server from a Visual Basic application. To use the VBClient program 1.From MS Visual Basic, open the project file VB_API_sample.vbp. ー>open済み 2.On the Projects menu, select Components. ー>VB2005で「はコンポーネントの追加」をクリック 3.In the Components dialog box, select TWS ActiveXControl module and click OK.ー>ダイアログにはTWS activeXControlがない Press Ctrl + F5 to compile and run the project. 3.のTWS というのはこの会社の株取引用のツールです。 普通何もしないでダイアログにTWS ActiveXControlがあるはずがないとは思うのですが、何かが抜けているのか、やり方が悪いのか、またはテンプレート中のどれかをクリックして,TWSActiveControlという名前をつければよいのか、おわかりの方がおられたら教えてください。 直接聞けばよいのですが、英語の質問は苦手なもので、またAPIプログラムはサポートしないとあったものですから・・・・。 よろしくお願いします。

  • サーバ上でActiveXコントロールのオブジェクトを生成し、VBScr

    サーバ上でActiveXコントロールのオブジェクトを生成し、VBScriptからメソッド呼 び出しを行うため、下記のようなプログラムを作成しました。 [test.asp] <html xmlns="http://www.w3.org/1999/xhtml" > <head> <meta http-equiv="Content-Type" content="text/html; charset=x-sjis"/> <meta name="GENERATOR" content="Microsoft Visual Studio 6.0"/> </head> <body> <OBJECT id=Test1 style="LEFT: 0px; VISIBILITY: hidden; TOP: 0px" codeBase=Test.ocx#version=4,0,0,0 type=application/x-oleobject classid=clsid:XXXX runat="server"> </OBJECT> <script language=vbscript runat="server"> Response.Write(Request.Form(input1)) Test1.TestCall(Request.Form(input1)) </script> <script language=vbscript> Sub test1() Document.Testform.submit() End Sub </script> <form name="Testform" action="test.asp"method="POST"> <input style="width: 143px; height: 75px" type="button" name="button1" onclick="test1"/> <input type="hidden" name="input1" value=" "/> <!--ここにユーザ入力値を入れ る--> </form> </body> </html> Test.ocxは公開メソッドとして、ユーザ入力値を引数に持つ"TestCall"を持っていま す。 サーバ側でregsvr32 Test.ocxでレジストリ登録して、そのクラスIDを<OBJECT>タグ で指定しています。 これをクライアントから http://servername/test.asp で開くと、そのまま応答がなくなります。 VBScriptでTest.ocxのメソッドを使用している部分を削除すれば、普通にレスポンス が帰ってきます。 (Response.Write(Request.Form(input1))の結果が正しく表示されている) input1にはユーザ入力値を入れる処理をVBScriptで実装していますが、上記では省略 しています。 何か設定等足りないところがあるのでしょうか? Test.ocxのインスタンス生成に失敗しているような感じがします。 インスタンスはこのページがロードされたときにサーバ側で生成されるものと理解し ていますが、正しいでしょうか? なお、これと同じことをクライアントサイドで行った場合、正常にTest.ocxのメソッ ドをコールできています。 (<object>タグと<script>タグでrunat="server"を削除。) やりたいことは、ユーザーが入力したフォームデータをsubmit()して、サーバ上で ActiveXオブジェクトを生成して、VBScriptからActiveXの公開メソッドを呼び出し、 その中からさらにサーバ上の別プログラムを呼び出し、処理結果を受けてVBScriptへ 処理を戻し、結果をASPで処理してクライアントに返したいのです。 普通のWebアプリケーションとほぼ同じだと思いますが、ActiveXコントロールから別 のプログラム(レガシーアプリ)へはPostMessageで要求を投げているので、結果が 自身にPostされるまでSleepしてからVBScriptに処理を戻すという形にしようとして います。 サーバ環境はWindows Server 2003 + IIS6.0、クライアントはWindows XP Professional SP3 + IE6.0です。 リモートデバッグの仕方が分からず苦労しています。

  • ユーザーフォーム上でFor Each~Next?

    Excelユーザーフォームでマルチページを使用しているのですが テキストボックスに文字(パスワード的なもの)を入力したら マルチページ内の特定ページのコントロールをenabled=trueにしたいのです(通常はenebledがtrue・falseの混合ページです) 先日よりFor Each~Next構文を使い始めたのですが勉強不足『オブジェクト・コレクション』の概念がいまいち理解できません。よろしくお願いします。 ネット上で調べてコピペしたのですがこのままだと他のページ、ページ外のコントロールまで影響するので良い方法をアドバイスしていただけますか?やはりコントロール個別にコードを書くしかないのでしょうか? Private Sub TextPASS_Change() If TextPASS.Value = "aaaa" Then For Each Control In Controls 省略(enabled=true) Next Else For Each Control In Controls 省略(enabled=false) Next End If End Sub