今日、私は顧客のサーバー構成を手伝い、プログラムをテストしたところ、ASP プログラムでサーバー オブジェクト エラー ASP 0178: 80070005 が発生したことがわかりました。テスト後、これはアクセス許可の問題が原因でした。特に、インストールされたばかりのコンポーネントの場合、セキュリティ上の理由から権限が非常に低いため、権限を手動で設定する必要があります。設定方法は以下を参考にしてください。
エラーメッセージ:
サーバー オブジェクト エラー「ASP 0178: 80070005」
Server.CreateObject アクセス エラー
../asp.asp、123 行目
権限のチェック中に Server.CreateObject への呼び出しが失敗しました。このオブジェクトへのアクセスは拒否されます。
エラーが示すように、権限が存在します。
解決:
1.server.createObject(mssearch.application) を呼び出すときにエラーが発生します。解決策は次のとおりです。
「スタート」→「ファイル名を指定して実行」→「dcomcnfg」
mssearch を見つけて (名前は呼び出しているオブジェクトによって異なります)、右クリックして [プロパティ] > [セキュリティ] を選択し、3 つの権限すべてを全員に付与します。実際には、最初の権限で十分です。
2. 上記の問題が発生する場合、その原因は確かに権限の問題です。
解決策の 1 つは、IIS の匿名アクセス許可を変更することです。
2 番目の最も簡単な方法は、コンポーネントを別の場所に登録することです。特に、デスクトップまたは C ドライブ (システム ドライブ) 上の特別なディレクトリではなく、D、E などのドライブにコンポーネントを登録します。その理由は、通常、IIS に使用するアカウントはシステム権限が低いアカウントであるため、自分のアカウントでログインすると、デスクトップのアクセス権限が IIS アカウントの権限よりも高くなる可能性があります。
3. MS データベースを確認した後、aspxuexi.com ASP 学習ネットワークからの解決策は次のとおりです。
この記事は以前は Q315454 として公開されていました
症状
Microsoft FrontPage で作成された Active Server Page (ASP) データベースの結果ページを参照しようとすると、次のようなエラー メッセージが表示される場合があります。
プログラムコード:
サーバー オブジェクト エラー「ASP 0178 : 80070005」
Server.CreateObject アクセス エラー
../config/coon.asp、5行目
このオブジェクトへのアクセスが拒否されました。Server.CreateObject への呼び出しが失敗しました。
原因
この現象は、%ProgramFiles%/Common Files/System フォルダに対して誤った NTFS アクセス許可が定義されている場合に発生する可能性があります。
解決
問題を解決するには、%ProgramFiles%/Common Files/System フォルダーの NTFS アクセス許可をリセットします。これを行うには、次の手順を実行します。
1.. Windows エクスプローラーを開き、[スタート] を右クリックし、ショートカット メニューの [エクスプローラー] をクリックします。
2.. フォルダー ビューで、%ProgramFiles%/Common Files/System フォルダーを展開します。
3.. フォルダーを右クリックし、ショートカット メニューの [プロパティ] をクリックします。
4.. [セキュリティ] タブをクリックします。
5.. 既存のアクセス許可にEveryone を追加し、Everyone に少なくとも読み取りアクセス許可を与え、これらの新しい設定をすべてのファイルとサブフォルダーに適用します。
6..「OK」をクリックします。
-------------------------------------------------- ----------------------------------
ローカルでデバッグする場合:
この問題を解決するには、%ProgramFiles%/Common Files/System フォルダの NTFS アクセス許可をリセットします。 これを行うには、次の手順に従います。
1. Windows エクスプローラーを開きます。
[スタート] を右クリックし、ショートカット メニューの [参照] をクリックします。
2. フォルダー ビューで、%ProgramFiles%/Common Files/System フォルダーを展開します。
3. フォルダーを右クリックし、ショートカット メニューの [プロパティ] をクリックします。
4. 「セキュリティ」タブをクリックします。
5. 少なくとも既存のアクセス許可をEveryone に付与し、Read アクセス許可をEveryone に追加して、これらの新しい設定をすべてのファイルと字幕に適用します。
6. 「OK」をクリックします。
-------------------------------------------------- ----------------------------------
サーバーの場合は、全員に関連する DLL へのアクセス許可を与えます。