2010-11-20 3 views
5

私は最近、XPからWin 7にアップグレードしました。私は、ASPの古典的なアプリケーションからVB6にデバッグすることができました。しかし、私は今取得:IIS7 VB6デバッグ

「許可を確認中にServer.CreateObjectの呼び出しが失敗したアクセスが、このオブジェクトに拒否されました。」

私はVB6でDLLを起動し、アクセスしたときにのみoccurrs ASPアプリケーション。 IIS7より前には、これはVB6 dllにステップインすることを可能にします。何か案は?

+0

管理者としてVB6を実行しようとしましたか? –

+0

私はこれに答えましたhttp:// stackoverflow。com/questions/8728958/how-can-i-debug-a-vb6-iis-application-on-windows-7-64-bit/14165582#14165582 – yuben

答えて

2

ASPアプリケーションからVB6コンポーネントをデバッグするとき、通常このエラーはDCOM構成の問題が原因です。 VB IDE(VB6.exe)にはDCOMエントリがなく、デフォルトではISSアカウントに適切な権限が与えられません。

この記事では、この問題を解決する方法の概要を説明します。 http://support.microsoft.com/kb/q259725/

1

私は同じ問題がありました。 KB/q259725で解決できませんでした。闘争の日の後、私はこの記事を見つけました:http://support.microsoft.com/kb/936296。修正プログラムをインストールした後、私の問題は解決されました。これが役立つことを願っています。この問題は、環境固有の問題です。あなたは2003サーバSP2でそれを見ることができます。

私はここからこの修正プログラムをダウンロードした:私はちょうど同じ問題に遭遇しましたhttp://thehotfixshare.net/board/index.php?autocom=downloads&showfile=3287

1

、上記の「修正」を適用した後、まだ問題を抱えていました。 Webアプリケーションに匿名認証がオフになっていることを確認しました(代わりにWindows認証を使用しました)。これで、従来のASPからvb6をデバッグできました。このことから

私はレジストリエントリ、またはDCOMアクセス許可の変更(両方q259725から)かどうか、修正に寄与することはできません。

これが誰かを助けることを願っています!

3

私は最近、私たちのdevの環境でのWinXPからwin7のに行くのと同じ経験を持っていたし、私たちのレガシーアプリケーションの一部と全く同じ悲しみを持ってきました。ここで私はそれを固定した方法です。

明確にすることが、私たちのクラシックASPのウェブサイトは、当社の社内VB6のの.dllを切っ呼び出しを行うと、それは私がして、デバッグにステップできるようにしたかったこれらの.dllファイルでした。

アプリケーションプール]セクションで、32ビットアプリケーション

を有効にし、右のWebサイトのアプリケーションプールをクリックし、[詳細設定]を選択します。

  • 「32ビットアプリケーションを有効にする」を「True」に変更します。

  • 「管理されたパイプラインモード」を「クラシック」に変更します。DISABLED

  • ASP.Net -

    • 匿名認証を:ASP認証

      @GregWoodsが示唆したように、以下のとおり、IISでWebサイトの認証詳細を確認

    偽装 - 無効化

  • 基本認証 - 有効
  • フォーム認証 -
  • Windows認証DISABLED -

ENABLEDは、Visual Basic IDE内のVB6アプリケーションを実行し、Webブラウザを開き、 Webサイトに移動し、コードが外部VB6.dllに入ると、コードで設定されたブレークポイントでVisual Basic 6環境が停止するようになります。 Ta da。

より多くのステップ?

また、VS2010またはVS2012内から実際のClassic ASPページ自体をデバッグできるようにしたいと考えています...これも完全に可能ですが、このリストに追加する追加ステップがあります。

IISでは、以前作成したWebサイトをクリックし、[機能]ビューで[ASP]をクリックします。

  • [デバッグプロパティ]オプショングループを展開します。

  • 「クライアント側のデバッグを有効にする」を「True」に変更してください。

  • 「サーバー側のデバッグを有効にする」を「True」に変更してください。

  • [適用]をクリックして保存します。 (操作ペインの右上隅)。

その後、ブレークポイントにVisual Studioを停止させるためには、あなたがプロセスにアタッチする必要があります。

  • は、「ツール」メニューに移動し、プロセスにアタッチ」を選択します。.. 」

  • 変更]自動」にオプション 『へのアタッチ:ネイティブコード』

  • 選択し 『w3wp.exeの』プロセスをクリックし 『』に取り付けます。あなたが選択したブラウザでウェブサイトを開いて、あなたのウェブサイト、IISとVS2010/VS2012にnabigateとき

は今、連携して動作し、Visual Studioは、任意のブレークポイントで停止します。

希望すると、これが役立ちます。