这是我正在尝试做的事情:
我的应用程序具有允许生成文档进行传真的功能。此功能将文档打印到在系统中设置为传真打印机的打印机。它是兄弟,打印机名称是Brother PC-FAX。当前,当启动打印作业时,打印驱动程序会打开一个对话框,用于输入传真号码,封面页选项以及不能输入的内容。存储与文档关联的传真号码。我正在尝试设置我的应用程序为用户注入传真号码,然后单击“开始”按钮。 该对话框有快捷方式,它最初聚焦一个按钮,用户可以按Shift + TAB键进入数字输入控件,然后接受Ctrl + V粘贴。然后用户可以按Alt + O激活“开始”按钮。我以前的应用程序版本只是将传真号码复制到剪贴板,并将粘贴和单击操作留给用户,但我正在尝试进一步自动化。我目前的做法是
这可以工作,除非实际的传真对话框似乎没有注册为实际窗口,例如,它可能只是打印驱动程序的对话框子窗体。我想出的唯一一个窗口标题是“打印”框,它是每次打印时在任何打印机上弹出的小窗口。这不允许SendKeys函数通过。
有关我应该如何处理的任何想法?如果驱动程序和SDK允许自定义命令调用会很好,但事实并非如此。
答案 0 :(得分:1)
想出来,至少我想出了“A”方法。如果有人有更好或更有效的想法,请告诉我,但这是我如何解决它:
这样可行,但如果系统性能下降导致打印作业变慢,超过5秒的睡眠周期,我可以看到问题。这个周期可能会增加,但也许有更好的方法呢?