2017-03-25 21 views
0

シンプルな領収書(テキストファイル)を印刷しようとしていますが、そのときにPCからファイルをPDFで保存するように求められます。私は単なるテキストファイルを印刷したいPDFファイルとして私のテキストファイル(print.txt)を保存したくないC#ファイルを印刷せずにPDFとして保存する

private void btn_Pay_Click(object sender, EventArgs e) { 
     //Button "Pay" clicked 

     DialogResult result = MessageBox.Show("Print receipt?", "Success", MessageBoxButtons.YesNo); 

     if (result == DialogResult.Yes) { 
      //Print receipt 

      ProcessStartInfo psi = new ProcessStartInfo(@"print.txt"); 
      psi.Verb = "PRINT"; 

      try { 
       Process.Start(psi); 
      } 
      catch (Exception ex) { 
       MessageBox.Show(ex.Message); 
      } 
     } 
    } 

:ここに私のコードです。 (実際のプリンタはコンピュータにもネットワークにも接続されていないので、実際に印刷することはできません。テストしたいだけです。それが問題なのかどうかはわかりません。私が試したときに画面の右隅に表示されます)。

「ファイルを(pdf形式で)保存する」プロセス全体を取り除く方法はありますか?

+0

デフォルトのプリンタとしてPDFプリンタドライバをインストールしたようです。 (Foxit、Adobe、リストは長いです) – Steve

+0

'ShellExecute'を使用するよう明示的に言いましたか? – dcg

+0

いいえ、dcg。していません。私はそれが何であるか、それが何であるか、それをどうやって行うのかを知らない。私がこれまでに試したことはすべて上記に見ることができます。 –

答えて

0

あなたはプリンターをお持ちでない場合は、Windowsのデフォルトの機能は、「PDFに印刷」..ですThe screenshot

私はそれがPDFファイルを保存し、なぜそれがあると思います。 プリンタを接続し、プライマリとして設定してください。

+0

を参照してください。問題はプリンタがないから試してみることができないことです。私はプリンタを持っていれば、上のコードがうまくいくと思いますか? –

関連する問題