1

ASPClassicサイトのAdobeReaderの「ブラウザ内」機能でPDF出力がレンダリングされる問題が発生しています。

私は、いくつかの入力を含むフォームを持っており、それを処理してPDFレポートを作成します。レポートは、ファイルとして保存すると正しくレンダリングされますが(すべての入力値が考慮されます)、Reader v7.0で表示すると空白の画面が表示され、v8.1.2では入力値なしのレポートに直接移動します。

ここからブラウザで「更新」を押すと、HTMLフォーム入力が繰り越されていないことを示すレポートも表示されます。


  • HTMLフォームのポストバックの基本的な仕組みで、省略した可能性のあるものはありますか?

* m * eを困惑させるのは、Adobe Readerの[ブラウザ内に表示]オプションのチェックを外し、ブラウザを再起動しないと、両方のバージョンで正しいレポートが表示されることです。

他の考えられる問題は、ブラウザの「信頼済みサイト」ポリシーに関係しています。ドメインが信頼できるリストに追加され、次のようになりました。

  • HTML入力フォームは、ステータスバーに信頼できるサイトとして表示されます
  • ブラウザ内のPDF画面が「不明なゾーン」に表示されます</li>

明確にするために:

  • リーダーがアンインストールされている場合、ダウンロードされたファイルは正しいです
  • Readerがインストールされていて、ブラウザに表示されないように設定されている場合、出力は正しいです
  • Adobe Readerでブラウザ内を表示するように設定されている場合は、
    • v7.0 –空白の画面を表示します。「更新」は、入力値のないPDFレポートに移動します
    • v8.1.2 –入力値なしのレポートを表示します
  • Adobe Readerで「ブラウザ内に表示」オプションのチェックを外し、ブラウザを再起動しないと、両方のバージョンで正しいレポートが得られます

テストしているのと同じマシンで、Readerv7.0を使用してブラウザー内でPDFファイルを正しく表示できる古い実稼働環境があります。説明されている問題は、セキュリティ制御が強化された新しい環境で同じコードが設定されている場合に発生します。

環境もアップグレードされない古いテクノロジーを使用しています。これも:

  • サイトはASPクラシックです
  • コードはPDFv1.3を出力しています
  • InternetExplorer6。はい。6.6。

レポートが常にHTML入力を引き継ぐとは限らない理由について何か考えはありますか?

助けてくれてありがとう。

4

2 に答える 2

1

PDFを生成するASPページは、フォームから値を取得していません。そのため、値が空のPDFフォームを作成しています。HTMLフォームがPDFを生成するASPスクリプトに直接投稿することを確認してください。PDFを生成するASPスクリプトに送信されるresponse.transfer、response.redirect、または404リダイレクトがあってはなりません。

于 2011-05-19T08:00:39.000 に答える
0

ああ、ダン。

したがって、IISではGZIP圧縮が有効になっており、クライアントにはIE6のみのロールアウトがあります。IE6のGZIPの非互換性については多くのことが書かれており、IISで条件付きで許可することを検討している場合は、いくつかの解決策があります

白い画面は、ポストバックするASPページであり、HTTPヘッダーの「content-type」を(「application / pdf」に)変更した結果です。IISは圧縮する必要があると判断し、IE6では失敗します。

Adobe Reader 8は2番目の要求を実行し、ポストバック値を失います。

于 2011-06-20T01:51:20.840 に答える