首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ProcessStartInfo.CreateNoWindow不工作

ProcessStartInfo.CreateNoWindow不工作
EN

Stack Overflow用户
提问于 2014-12-26 21:01:43
回答 1查看 555关注 0票数 0

我直接在打印机上打印一个pdf文件,但我想在后台打印。目前一切正常,但是你可以看到adobe正在启动并打开一个文档,而我希望它保持隐藏状态。

为此,我尝试使用:

代码语言:javascript
复制
Process1.StartInfo.CreateNoWindow = True

但是它不会工作,而我做的所有事情都和在下面写的一样:MSDN

上面提到你应该放在

代码语言:javascript
复制
psi.UseShellExecute = False

为了让CreateNoWindow工作,但是当我把它放到我的代码中时,我得到一个错误消息:系统找不到指定的文件,而没有这一行,它就能工作。

你可以在下面找到完整的代码:

代码语言:javascript
复制
            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()

有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2014-12-26 21:15:10

这个怎么样?

定义函数ShowWindow:

代码语言:javascript
复制
<DllImport("user32.dll", SetLastError:=True, CharSet:=CharSet.Auto)> _
Private Shared Function ShowWindow(ByVal hwnd As IntPtr, ByVal nCmdShow As ShowWindowCommands) As Boolean
End Function

然后叫它:

代码语言:javascript
复制
Process1.Start()
ShowWindow(Process1.MainWindowHandle, 0)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27657524

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档