• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:【緊急】ASPでのExcel出力方法について)

Excelオブジェクトの作成エラーについて

このQ&Aのポイント
  • ASPでExcel出力する際、Excelオブジェクトの作成がエラーとなります。
  • いくつかの対応策を試しましたが解決していません。
  • 開発環境はWindows 8.1、IIS 8.5、Excel 2013です。

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

  • ベストアンサー
  • shockatz
  • ベストアンサー率80% (153/191)
回答No.1

残念ながら、何重もの理由で、そのソリューションは成立しません。 ・Excelのようなマルチスレッド未対応のオブジェクトをWebサーバで走らせると、確実に暴走するか、エラーで停止します。ExcelやAcrobatなど、何でも同じです。 ・エラーが起きた後、メモリからオブジェクトが抹消されないため、あっという間にメモリリークを起こし、サーバがハングします。 ・そもそも、ソフトウェアベンダは、Excelなどのアプリケーションをサーバ上で稼働させるライセンシーを認めていません。 ・64biot OSのうえでレガシーASPが正常に動作する保証はありません。そもそも、32bitの2003サーバでさえ、ASPを動作させるためには多数の依存ライブラリをインストールする必要がありました。 FileSystemObjectやDictionaruObjectは間違いなく落ちます。 ・Windows8.1/64bitと、Windows 2008R2サーバでは、IISのバージョンや動作スキームが完全に異なっており、32ビット依存コンポーネントのインストール状況が違います。 また、上記のセキュリティ設定も、サーバOSは根本的に異なります。 自分ならさっさと諦めて、その部分だけASPX仕様に変更し、Excel生成用のWebライセンスつき市販ライブラリを購入してカタをつけます。 Excel Creator http://www.adv.co.jp/product/product_excelcreator2012.htm Webサーバ上で正しいExcelデータを生成するということは、非常にコストのかかるタスクなのですよ。 それが予算の関係で不可能なら、CSVで我慢してもらうか、Office XLSXを解読して生成するか、HTMLかWell FormedなXMLを生成し、レスポンスヘッダを詐称して強引にエクセルに認識させる(要するに現在ご提示のNGな方法)かすることです。 回答になってなくて申し訳ありませんが、「やっても無駄」というお答えしかできません。 あしからず。

h_hogehoge
質問者

お礼

ご回答いただきありがとうございます。 そうですか、私がやろうとしていたことは、ある意味、非現実的なことなのですね。 別方法を含めて再検討します。

関連するQ&A