社区
进程/线程/DLL
帖子详情
windows服务程序调用printer打印程序 无法启动打印任务,何解?
IT_SW_FW
2011-05-04 06:02:24
我用windows应用程序调用printer打印程序可以正常打印,但用windows服务程序调用printer却无法启动打印任务无法打印,头痛了一个星期还是无解,各位高人帮帮忙!谢谢。。。。
...全文
739
9
打赏
收藏
windows服务程序调用printer打印程序 无法启动打印任务,何解?
我用windows应用程序调用printer打印程序可以正常打印,但用windows服务程序调用printer却无法启动打印任务无法打印,头痛了一个星期还是无解,各位高人帮帮忙!谢谢。。。。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
aiouw
2012-07-16
打赏
举报
回复
5楼方法的可以
oyljerry
2011-05-05
打赏
举报
回复
服务用CreateProcessAsUser模拟当前用户方式启动打印.不要用service权限去启动
wish_cn
2011-05-05
打赏
举报
回复
1、确保Print Spooler服务已启动;
2、在你的服务属性选项卡里,把"Allw service to interact with desktop"勾上。
IT_SW_FW
2011-05-05
打赏
举报
回复
无法启动打印任务是因为m_dc.StartDoc(&di)调用不起作用,一是StartDoc僵死出不来,二是StartDoc通过了,但打印任务没起来。
IT_SW_FW
2011-05-05
打赏
举报
回复
服务程序及应用程序调用打印程序都使用以下代码:
string sCommandline = "d:\\imodia\\bin\\printer.exe";
string sWorkDir = sCommandline.substr(0, sCommandline.rfind("\\"));
char pCommandLine[128] = {0};
strcpy(pCommandLine, sCommandline.c_str());
PROCESS_INFORMATION pProcInfo;
STARTUPINFO startUpInfo = {sizeof(STARTUPINFO),NULL,"", NULL,0,0,0,0,0,0,0,STARTF_USESHOWWINDOW,0,0,NULL,0,0,0};
startUpInfo.wShowWindow = SW_SHOW;
startUpInfo.lpDesktop = NULL;
CreateProcess(NULL,pCommandLine, NULL,NULL,TRUE,NORMAL_PRIORITY_CLASS,NULL,sWorkDir.c_str(),&startUpInfo,&pProcInfo);
启动打印任务的代码:
AfxGetApp()->CreatePrinterDC(m_dc);
DOCINFO di;
ZeroMemory(&di,sizeof(DOCINFO));
di.cbSize = sizeof(DOCINFO);
di.lpszDocName = "printer";
m_iTotalLine = 0;
if(m_dc.StartDoc(&di))
{
m_dc.StartPage();
return TRUE;
}
初以为是因为服务程序调用printer程序没有显示出窗口,后把printer窗口显示出来还是无法启动打印任务。一直想不明白是哪出问题了,不知从何下手。
IT_SW_FW
2011-05-05
打赏
举报
回复
5楼兄弟的方法没试,不知道可不可行...不过还是要谢谢大家帮助的。
IT_SW_FW
2011-05-05
打赏
举报
回复
我是和同学讨论后才解决的,方法和6楼oyljerry方法一样,oyljerry早点说就好了,至少昨晚我可以睡的安稳点。我查了下,当printer在system用户下无法启动打印,我让printer在administrator用启下可以打印。
xiaopoy
2011-05-04
打赏
举报
回复
服务程序是不能有窗口的。监视下要使用的API,然后动态LoadLibraryA->GetProcAddress这样的调用。也许可以解决问题。
海盗医生
2011-05-04
打赏
举报
回复
windows应用程序 是控制台类型还是窗口类型?
如果为窗口类型,那么跟服务是有区别的
Qt
打印
图片
打印
机 例程
# QT_
Pr
inte
r QT开发的
调用
打印
机
打印
图片的
程序
,代码比较简单,注释清晰,适合初学者学习使用。 开发环境:
windows
+QT5.9
Foxit PDF
Pr
inte
r 虚拟
打印
机
Foxit PDF
Pr
inte
r 虚拟
打印
机 任何可
打印
内容转为PDF文件
微信小
程序
调用
小票
打印
机实现
打印
订单
随着微信小
程序
的出现,微信已经完全占据了我们的生活,智能化互联网时代的到来,带给我们的便利我想不用说大家都是深有体会,随着小
程序
的火爆,随之带动着用户对
打印
的需求,那么,微信小
程序
是如何对接
打印
机的呢...
计算机
无法
启动
打印
服务,win10系统
打印
服务
无法
启动
的设置教程
有什么办法可以永久解决win10系统
打印
服务
无法
启动
的问题,面对win10系统
打印
服务
无法
启动
的图文步骤非常简单,只需要1、首先,运行“services.msc”(不要引号,下同),找到“
pr
int spooler”,看
启动
类型是否为...
基于HTTP可供浏览器
调用
的本地
打印
程序
之前给公司做
打印
都是用ActiveX控件,只支持IE浏览器,最近需要支持谷歌,又不想去学谷歌插件编写,于是就用本地
启动
一个http服务器来供浏览器
调用
(写成
windows
服务更好),同事用了都说好(笑)!为了方便大家使用...
进程/线程/DLL
15,471
社区成员
49,182
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章