文書を印刷するためにプリンタを選択する際に問題があります。プロセスは常にデフォルトのプリンタで文書を印刷します
私のコードは次のとおりです。
var filename = @"C:\Users\I\Desktop\test.doc";
PrintDialog pd = new PrintDialog();
pd.PrinterSettings =new PrinterSettings();
if (DialogResult.OK == pd.ShowDialog(this))
{
Process objP = new Process();
objP.StartInfo.FileName = filename;
objP.StartInfo.WindowStyle =
ProcessWindowStyle.Hidden; //Hide the window.
objP.StartInfo.Verb ="print";
objP.StartInfo.Arguments ="/p /h \"" + filename + "\" \"" + pd.PrinterSettings.PrinterName + "\"";
objP.StartInfo.CreateNoWindow = false;
//true;//!! Don't create a Window.
objP.Start();
//!! Start the process !!//
objP.CloseMainWindow();
}
と何でも私が選ぶ、process
は関係なく常にあるpd.PrinterSettings.PrinterName
のどのような値、デフォルトのプリンタを使用しないでしょう。
私のコードで何が問題になっていますか?
「objP.StartInfo.Arguments」の値は、このコードをステップ実行したときに期待される値ですか?これはコマンドプロンプトで手動でキー入力すると機能しますか? –