VisualStudio2008
WindowsServer2008R2
ASP.Net(VB.NET)
CrystalReport
仮想マシンの環境にWebフォームを配置して、Crystal Reportで作成した帳票をデフォルトプリンタであるネットワークプリンタに直接印刷(叉はprocessで印刷)したいのですが、
スプールはプリンタに送信されていますがプリンタで確認するとジョブが溜まっていません。
(プリンタのテスト印刷は印刷できます)
・プリンタは「everyone」に印刷許可されてますが、試しに「Network Service」「IIS_IUSRS」「IUER」のユーザを追加しても駄目でした。
・Web.configに<identity impersonate="true"/>を追加すると以下のエラーがでるようになったので削除しました
"レポートファイルのアクセスが拒否されました。別のプログラムで使用されている可能性があります。"
◆追記
・試しにcrystalreportの直接印刷ではなくPDF化してホームディレクトリに出力してそれをprocessで印刷
→プリンタにスプールが行かない。しかしコマンドプロンプトから同じパラメタで実行すると印刷出来ました。
"start acrord32.exe /t ファイル名 プリンタ名"
実装では以下のようにしております。
●印刷ボタン押下
Dim RclsObj As New ReportDocument() RclsObj.Load(Server.MapPath("../Report/rpt01.rpt")) RclsObj.PrintOptions.PrinterName = プリンタ名 RclsObj.SetDataSource(dsPrintData) RclsObj.PrintToPrinter(1, False, 0, 0)
IISの権限の問題なのか、プリンタの問題なのか
Asp.Netの基礎知識がなくて申し訳ないのですが、
ご指導いただけますでしょうか。
あなたの回答
tips
プレビュー