0

私の .net Web アプリケーションには、製品の約 1,000 エントリを含む Excel ファイルをアップロードするオプションがあります。アプリケーションを localhost で実行するとアップロードは正常に機能しますが、iis7 でホストされ、一部のユーザーがアクセスすると、次のエラーが発生します。ネットワーク上の他のコンピュータ..

エラー

次のエラーのため、CLSID {00024500-0000-0000-C000-000000000046} を持つコンポーネントの COM クラス ファクトリを取得できませんでした: 80070005 アクセスが拒否されました。(HRESULT からの例外: 0x80070005 (E_ACCESSDENIED))。

例外の詳細: System.UnauthorizedAccessException: CLSID {00024500-0000-0000-C000-000000000046} を持つコンポーネントの COM クラス ファクトリを取得できませんでした。次のエラーが原因でした: 80070005 アクセスが拒否されました。(HRESULT からの例外: 0x80070005 (E_ACCESSDENIED))。

私はそれをグーグルで調べ、32ビットまたは64ビットOSについて話しているのを見つけました。

ありがとう。

4

3 に答える 3

2

この KB 記事 に記載されている理由により、サーバー アプリケーションで Excel 相互運用機能を使用することは避けてください。

代わりに、EPPlus (Excel 2007+)Aspose CellsSpreadsheetGearなどのサードパーティ製品を使用して Excel ドキュメントを操作することを検討してください。

おそらく、ASP.NET アプリは、プロファイルを持たないアカウントで実行されています。

于 2013-03-13T08:15:40.500 に答える
1

他のコンピューターからアップロードできるように、アップロード フォルダーに完全なアクセス許可が与えられていることを確認します。まず、全員に許可を与えることから始めます。次に、IIS ユーザーのみに制限できます。

于 2013-03-13T07:26:15.300 に答える