質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PDF

PDF(Portable Document Format)とはISOによって国際標準として制定されている電子ドキュメント用の拡張子です。

IIS

IIS(Internet Information Services)はマイクロソフト社によって開発されたwebサーバーです。Windows上で動作します。

ASP

ASP(Active Server Pages) あるいはClassic ASP (ASP Classic)は、マイクロソフト社開発した動的なウェブページ製作に利用可能なサーバー側のスプリクトエンジンです。

Q&A

解決済

1回答

1568閲覧

ASPでPDF出力 IISの設定がわからない

ka999

総合スコア9

PDF

PDF(Portable Document Format)とはISOによって国際標準として制定されている電子ドキュメント用の拡張子です。

IIS

IIS(Internet Information Services)はマイクロソフト社によって開発されたwebサーバーです。Windows上で動作します。

ASP

ASP(Active Server Pages) あるいはClassic ASP (ASP Classic)は、マイクロソフト社開発した動的なウェブページ製作に利用可能なサーバー側のスプリクトエンジンです。

0グッド

0クリップ

投稿2020/03/27 06:32

テスト用に作った!アプリケーションでは問題なくPDFに出力できたのですが別のアプリケーションで同じコードをコピーしてもグレーの画面のまま動きません。IISで設定するべきところはありますか?
![イメージPDF出力されず

<% Dim FdfAcx,resFDF 'FDF ActiveX オブジェクトの定義 Set FdfAcx = Server.CreateObject("FdfApp.FdfApp") '新しいFDF生成 Set resFDF = FdfAcX.FDFCreate 'PDFフォーム欄と値 resFDF.FDFSetValue "*****","*****",False 'テンプレートPDFのURL(フルパスが望ましい) 'resFDF.FDFSetFile "http://*****/test/test.pdf" '設定結果のFDFをファイル名を付けてクライアントでダウンロード Response.ContentType = "application/vnd.fdf" 'MIMEタイプ FDF Response.BinaryWrite resFDF.FDFSaveToBuf 'FDFデータをバッファーに出力 'クローズ resFDF.FDFClose set resFDF = nothing set FdfAcx = nothing %>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

ASP

1Response.Flush 2Response.End

を最後に入れてみてください。

投稿2020/03/27 07:11

KOZ6.0

総合スコア2626

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ka999

2020/03/27 07:15

結果は変わらなかったです。
ka999

2020/03/27 07:19

別のページではPDF出力できているので問題はコードではなくIISでのフォルダごとにできる設定がなにかあるのではないかと思ってるんです。
KOZ6.0

2020/03/27 08:55

Reposne.End を入れても変わらないということは asp のスクリプトは全部動いておらず、途中で異常終了しているっぽいですね。 ログ出力してどこまで動いているか確認してはいかがでしょうか。 ひょっとしたら ContentType を text/html にするとエラーメッセージが出てくるかもしれません。 エラーがわかれば、ある程度、原因が絞り込めるのではないでしょうか。
ka999

2020/03/30 00:40

解決できました。結論から言いますとコードより上の方で関係のない文字?(全角スペース)が入っておりそれを消すことでPDF出力されました。 コピーしたつもりが、すべてを置き換え切れていなかったみたいです。 ちなみに修正前にアドバイス通りContentType を text/html にすると   %FDF-1.2 %粤マモ 1 0 obj<>>> endobj 2 0 obj[<>] endobj trailer <> %%EOF という風に出力されていました。 お手数おかけしました。ありがとうございました。
KOZ6.0

2020/03/31 00:13

「<%」 の前に全角空白があって   %FDF-1.2 %粤マモ 1 0 obj<>>> endobj 2 0 obj[<>] endobj trailer <> %%EOF ↑ここが全角空白になっていたということでしょうか。 Response.Buffer = True Response.Clear とすると、それ以前に出力した内容がクリアされます。 HTML 以外のものを出力するとき、私は呪文のように入れていました。
ka999

2020/03/31 08:31

そこですね。 Response.Buffer = True Response.Clear を使って不具合がある個所を探すってことですか?
KOZ6.0

2020/03/31 11:19

この場合ですと、Response.Clear をした時点で全角空白部分が消えるってことです。 上になにがあっても気にしなくてよくなります。
KOZ6.0

2020/03/31 11:23

Response.Buffer = True Response.Clear 出力 Response.Flush Response.End こんな感じです。
ka999

2020/04/01 04:53

<% Response.write "ここは無視される" Response.Buffer = True Response.Clear Response.write "ここは処理される" Response.Flush Response.End %> っていうことですね。
KOZ6.0

2020/04/01 04:59

はい、そのとおりです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問