VC中,ShellExecute函数如何用默认打印机打印?

2024-12-19 03:34:34
推荐回答(3个)
回答1:

使用ShellExecute打印,它会通过文件扩展名调用默认的打开程序进行打印。
换句话说,如果是doc文档,就会使用word打印,你的参数为SHOW,还可以看到一个word的打开过程(会自动关闭)。
而不使用默认打印机,就是因为要打印的文档或者文件关联程序指定了使用的打印机(这个和文件格式有关,比如doc文件格式中,是可以指定打印机的),所以,如果没有指定,那么一定会使用默认打印机,而不使用默认,和程序无关(也管理不了),只能看是文档问题还是关联程序问题。

回答2:

1. 函数功能:
你可以给它任何文件的名字,它都能识别出来并打开它。
2.函数原型:
HINSTANCE ShellExecute(
HWND hwnd,
LPCTSTR lpOperation,
LPCTSTR lpFile,
LPCTSTR lpParameters,
LPCTSTR lpDirectory,
INT nShowCmd
);
3.参数说明:
hwnd:
用于指定父窗口句柄。当函数调用过程出现错误时,它将作为Windows消息窗口的父窗口。
lpOperation:
用于指定要进行的操作。
“open”操作表示执行由lpFile参数指定的程序,或打开由lpFile参数指定的文件或文件夹;
“print”操作表示打印由lpFile参数指定的文件;
“explore”操作表示浏览由lpFile参数指定的文件夹。

回答3:

如果路径没错的话,改为:ShellExecute(NULL,NULL,"E:\\Program Files\\Thunder Network\\Thunder\\Program\\Thunder5.exe"hlNULLNULLjnSW_SHOWNORMAL);试试