したがって、データベースからデータを取得し、 FixedDocumentを作成してから、次の 2 つのいずれかを実行する WPF (.NET 4、重要な場合は MVVM) アプリがあります。
「プレビューなしで印刷」: プレビューなしで印刷するように送信します。
または「プレビュー付き印刷」: DocumentViewerコントロールに表示し、[印刷] をクリックすると印刷に送信されます。
ほとんどのワークステーションとプリンターでは、これで問題なく動作します。ただし、時々問題が発生するものもあります。印刷が機能しません。
報告された症状:
- 「プレビューなしで印刷」を実行すると、すべてのドキュメントが印刷キューに積み上げられ、印刷されません。
- 「プレビュー付き印刷」を実行すると、プレビューの読み込みバー (データの取得と FixedDocument の作成を待機する) が停止し、プレビューが表示されません。
- これらの問題には一貫性がありません。
- 誰かが TeamViewer 経由でそのワークステーションに接続すると、すべてが続行されます - 印刷キュー内のすべてのアイテムが印刷され、バーの読み込みが続行され、プレビューが表示されます。
- 私自身、この問題を目撃したことはありません。私のワークステーションでは、問題のあるワークステーションに到達する唯一の方法は、TeamViewer を使用することです。
- 通常、ワークステーション (または場合によってはプリンター) を再起動すると問題が解決します。次の印刷ジョブは正常に動作します。
理論的な手がかりはありますか?
TeamViewer がプロセスのフリーズを解除するのはどうしてですか?
1 つの可能性として、接続時に TeamViewer がデータを取得するために必要ないくつかのポートを開きますが、サブジェクトの問題が常に繰り返されるわけではなく (閉じられたポートがあった場合)、DataGet タイムアウトが発生しません (あるそれがネットワークの問題であれば、そうなるでしょう)...