问题标签 [shellexecuteex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
103 浏览

python - 如何使用python按顺序打印文档?

我正在使用包来打印文档。根据打印类型,我有两个不同的文件夹。用于单面打印的文件夹 1 和用于双面打印的文件夹 2 。这是通过 win32api 包获得的,但问题是顺序打印win32api python

attributes['pDevMode'].Duplex用于设置打印模式。1 用于单面2 用于双面。最终是文件夹名称。

win32api.ShellExecute(0,'print',file_path,'.','/route',0)打印文档但不按顺序打印。

所以我从这里开始关注其他解决方案。这给了我这个错误

代码如下

0 投票
0 回答
58 浏览

windows - VB.net:从 64 位应用程序显示文件属性窗口?

我正在尝试在 VB.net 中构建一个类似于 Windows 文件资源管理器的应用程序。我想使用在文件资源管理器中右键单击文件时显示的相同窗口,单击菜单中的属性。问题是,这很容易解决,但仅当我的应用程序编译为 32 位应用程序时才有效,当我将其编译为 64 位时,这不起作用。

我想要两种答案:

  1. 最好的办法是从 64 位应用程序显示此文件属性窗口。
  2. 第二个最好的方法是创建一个 32 位应用程序作为包装器,其目的只是为了显示文件属性窗口。我几乎可以解决这个问题,但我不知道如何在单击“确定”或“取消”按钮时进行跟踪。

下面是我使用的代码,在 32 位 VB.net 中运行良好:

0 投票
1 回答
40 浏览

system.diagnostics - Process.WaitForExit(n) 不会在 Process.Start() 之后立即等待

代码:

有时会抛出:

“System.InvalidOperationException:没有进程与此对象关联。” 从.WaitForExit(20000)线。

我们从事件日志中捕获了这个,所以它确实像这样发生了。我很困惑我们怎么会在之后立即处于“无进程”状态p.Start()。我已经设法使无法运行的进程无法运行但通过了p.Start()预检检查,但它们总是能够创建一个句柄,因此.WaitForExit()总是通过报告它已经退出来工作。

我很困惑。ShellExecuteEx 调用某种 DDE 函数或其他不能识别进程的函数是合理的,但 Process API 似乎不支持该操作。调用代码也根本没有打开窗口,那么 DDE 源是什么?

我实际上不需要在这里等;我只需要检测它是否是一些 DDE 或其他废话,否则可以通过少量睡眠来做我需要的事情。

有一个近乎欺骗的结果是直接调用 iexplore 进程的答案,我不能使用。

0 投票
1 回答
59 浏览

c++ - 在 C++ 中的 ShellExecute 函数中插入(动态)命令字符串

使用 C++(在 Windows 10 上),我试图在 cmd.exe 中执行一个命令,该命令执行一个接受另一个文件(csv 格式)的 python 文件。我想做的就像我在命令行上输入这样的东西一样:

或者在更好的模式下:

为此,我使用ShellExecute这样的:

对于选择的 csv 文件(例如 filetoplot.csv),这是可行的。除此之外,对于我需要的,csv 文件的名称是每次在我的 C++ 程序中生成和更改的,并保存在一个变量file_name.c_str()中。所以,如果我在 ShellExecute 中使用它,我有:

但不幸的是(显然)它不起作用,因为确实没有一个 csv 文件重命名为“file_name.c_str()”。

我还发现了该功能ShellExecuteEx并希望重复相同的过程,我认为该功能应该像这样使用:

但即使在这里它也不起作用(我可能误解了函数的工作原理)。

希望我已经很好地解释了自己,我恳请您就如何在这方面进行的建议。

非常感谢