gpt4 book ai didi

java - 如何从 rundll32 调用中捕获结果?

转载 作者:可可西里 更新时间:2023-11-01 14:14:05 25 4
gpt4 key购买 nike

我一直被 Java 中的这个旧错误/缺失功能所困扰:

http://bugs.sun.com/view_bug.do;jsessionid=b2ac8ea11f05c16d948e24d36fb5?bug_id=4673406

问题是 Java 标准打印对话框中的“属性”按钮在 Windows 上似乎总是被禁用。该按钮仅在 PrintService.getServiceUIFactory() 返回非空值时启用。不幸的是,Win32PrintService 实例总是返回 null。总是。

通过谷歌搜索,我发现您可以通过调用 rundll32 调用 Windows 自己的打印属性对话框:

rundll32 printui.dll,PrintUIEntry /e /n "name of printer here"

我希望我可以使用它来规避 Win32PrintService 中的错误/缺失功能。但是,我不知道如何查询 PrintUIEntry 对话框以了解用户的选择。

换句话说,我如何获得上述 rundll32 调用的结果? (如果我必须用 C/JNI 编写一些东西并直接使用 Windows API,那就这样吧。不过我宁愿不这样做。)

或者有没有更好的方法来解决这个问题?

最佳答案

rundll32 不给你任何返回值,它的退出代码总是零。

我认为你必须找到另一种方法。

关于java - 如何从 rundll32 调用中捕获结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5077907/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com