我直接在打印机上打印一个pdf文件,但我想在后台打印。目前一切正常,但是你可以看到adobe正在启动并打开一个文档,而我希望它保持隐藏状态。
为此,我尝试使用:
Process1.StartInfo.CreateNoWindow = True但是它不会工作,而我做的所有事情都和在下面写的一样:MSDN
上面提到你应该放在
psi.UseShellExecute = False为了让CreateNoWindow工作,但是当我把它放到我的代码中时,我得到一个错误消息:系统找不到指定的文件,而没有这一行,它就能工作。
你可以在下面找到完整的代码:
Dim Process1 As New System.Diagnostics.Process
Dim psi As New ProcessStartInfo("AcroRd32.exe", "/t " + temppdf + " " + General.pdfprinter + "")
'psi.UseShellExecute = False
psi.CreateNoWindow = True
Process1.StartInfo = psi
Process1.Start()
Process1.WaitForInputIdle()
Process1.Kill()有什么想法吗?
发布于 2014-12-26 21:15:10
这个怎么样?
定义函数ShowWindow:
<DllImport("user32.dll", SetLastError:=True, CharSet:=CharSet.Auto)> _
Private Shared Function ShowWindow(ByVal hwnd As IntPtr, ByVal nCmdShow As ShowWindowCommands) As Boolean
End Function然后叫它:
Process1.Start()
ShowWindow(Process1.MainWindowHandle, 0)https://stackoverflow.com/questions/27657524
复制相似问题