2011-01-11 24 views
0

VC++ 6でデータを返すシンプルなActiveX COMをプログラムしましたが、私の会社のネットワーク上のHTMLページにこのコントロールが必要ですブラウザ上でActiveXセキュリティ設定を変更する必要はありません。私がやったVBScriptを使用してInternet Explorerで使用するActiveX DLLに署名する

手順:

  1. は、DLL COMはVC6で作成され、登録された(regsrv32を)とVB6から試してみました、それが動作します。
  2. CreateObject( "testcom.myclass")を使用してhtml/vbscriptページを使用してローカルで実行しようとしましたが、(IEからのすべての信頼されない実行警告を受け付けた後など)動作します。
  3. ここに記載されているように、自己署名付きルートCA証明書と中間証明書を作成しました。http://www.top20toolbar.com/misc/codesigncert.htmと、そこに説明されているように(ネットワーク上のテストコンピュータ上で)これらの証明書をIEにインストールします。
  4. 私はDLLに署名し(以前のウェブサイトからも)、テストコンピュータにインストールしました。すべてのそれと

、私は信頼できないとして、私はIEのオプションを無効てきたように私のスクリプトを取得: それは私だけ実行して与えるものではありません「の初期化とスクリプトのActiveXが安全とマークされていないコントロールを」 エラー429:ActiveXコンポーネントはオブジェクトを作成できません。 有効にするか、プロンプトを表示するオプションを変更すると機能します。

私が間違っていることを何とかして助けてくれますか?

ありがとうございました

答えて

3

あなたは「スクリプトを実行しても安全」と「初期化しても安全」などのActiveXオブジェクトをマークしましたか?

http://msdn.microsoft.com/en-us/library/aa751977(v=vs.85).aspx

+0

こんにちはSaibalあなたが言ったように、私はマークされませんでした。私はウェブサイトを読んでコードを試していますが、使用中にエラーが出ます:StringCchLengthとStringCchCopy。私はVC++ 6を使用しているので、これらの関数は定義されていないし、strsafe.hを持っていない。プラットフォームSDKをインストールしました – fernandojsg

+0

代わりにstrcpyまたは同様の関数を使用してみてください。 – Saibal

+0

こんにちはSaibal、私はそれをWindows 2003の下でStringCch *で動作させることができました。ポイントは私のプロジェクトはActiveXコントロールプロジェクトの代わりにATLプロジェクトですので、いくつかのGUID変数が私が持っていないリンク。 私は単純な属性を自分のコンポーネントから取得するだけで十分で、ATL COM DLLだと思っていましたが、これに対してActiveXコントロールを作成する必要がありますか? – fernandojsg

関連する問題