我正在通过C使用ShellExecute,看起来一切都很正常,除了一个问题。
ShellExecute(NULL, "print", "C:\\index.html", NULL, NULL, SW_HIDE);
我想获取打印对话框来开始打印,但是 MS Word 打开了文件 C:\index.html,该怎么办?如何使用 ShellExecute 在 HTML 文件上实现打印功能?需要注意的是,IE 不是我的默认浏览器。
我正在通过C使用ShellExecute,看起来一切都很正常,除了一个问题。
ShellExecute(NULL, "print", "C:\\index.html", NULL, NULL, SW_HIDE);
ShellExecute
相同的行为。ShellExecute
和Print动词,你需要更改计算机的配置。你需要确保计算机的关联已经配置好了以适合你的方式处理.html文件上的Print动词。你可以为自己的计算机做到这一点,但不能指望为其他人的计算机做到这一点。rundll32.exe %windir%\system32\mshtml.dll,PrintHTML "C:\index.html"
ShellExecute
调用。
ShellExecute
不会为你扩展路径。而且似乎文件名需要加引号。所以,这样做就可以了:ShellExecute(0, NULL, "rundll32.exe", "C:\\windows\\system32\\mshtml.dll,PrintHTML \"C:\\index.html\"", NULL, SW_NORMAL);
- David Heffernan