如何捕获打印机完成打印了的消息?

helloangel8002 2011-11-25 08:43:23
我电脑里安装了虚拟打印机 打印图片 我想要捕获虚拟打印机 完成打印的消息

求大小帮助
...全文
367 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
helloangel8002 2011-11-29
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 zwfgdlc 的回复:]

GetJob()可以返回打印机的打印完成状态.前提是要用AddJob()增加打印机作业才可以.
[/Quote]

驱动程序 我不会改 我只能让打印程序 调用我的管道程序

然后让管道程序通知我的主程序
zwfgdlc 2011-11-27
  • 打赏
  • 举报
回复
GetJob()可以返回打印机的打印完成状态.前提是要用AddJob()增加打印机作业才可以.
helloangel8002 2011-11-27
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 leegoex 的回复:]

我做过一个类似的,是通过写注册表来实现虚拟打印机与另一个应用程序的通信。

1.在应用程序使用ShellExecute时写入注册表一些状态,表示正在打印
2.虚拟打印机运行过程中通过修改修改注册表状态,表示正在打印和完成打印
3.应用程序一直检测注册表的状态来查看自己启动的打印任务是否已完成

应用程序与虚拟打印机通信的协议自己定义好,并且也不一定非要通过注册表保存通信的信息。
[/Quote]


不知道管道行不行 能力不够啊
leegoex 2011-11-26
  • 打赏
  • 举报
回复
我做过一个类似的,是通过写注册表来实现虚拟打印机与另一个应用程序的通信。

1.在应用程序使用ShellExecute时写入注册表一些状态,表示正在打印
2.虚拟打印机运行过程中通过修改修改注册表状态,表示正在打印和完成打印
3.应用程序一直检测注册表的状态来查看自己启动的打印任务是否已完成

应用程序与虚拟打印机通信的协议自己定义好,并且也不一定非要通过注册表保存通信的信息。
helloangel8002 2011-11-26
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 jennyvenus 的回复:]

给dll传一个主程序的hwnd吧,然后让dll给hwnd sendmessage。
[/Quote]


dll 是系统调用的 系统调用虚拟打印机 dll  是打印机的驱动 
用户 昵称 2011-11-25
  • 打赏
  • 举报
回复
void
CSnooperView::OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo)
{
//在这里添加代码,通知frame进行刷新。
CRichEditView::OnBeginPrinting( pDC, pInfo );
}

void
CSnooperView::OnEndPrinting(CDC* pDC, CPrintInfo* pInfo)
{
//在这里添加代码,通知frame进行刷新。
CRichEditView::OnEndPrinting( pDC, pInfo );
::SendMessage( g____TheFrameHandle, WM_SIQI_PRINTPREVIEW_END, 0, 0 );
}
helloangel8002 2011-11-25
  • 打赏
  • 举报
回复
支持下自己 希望大侠帮助
用户 昵称 2011-11-25
  • 打赏
  • 举报
回复
给dll传一个主程序的hwnd吧,然后让dll给hwnd sendmessage。
helloangel8002 2011-11-25
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 jennyvenus 的回复:]

C/C++ code
void
CSnooperView::OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo)
{
//在这里添加代码,通知frame进行刷新。
CRichEditView::OnBeginPrinting( pDC, pInfo );
}

void
CSnooperView::OnEndPrinting(CDC* pDC……
[/Quote]


我是用 ::ShellExecute(NULL,"print",*it,"","",SW_HIDE);
虚拟打印机的源代码(用于生成dll) 我有
我不知道怎么改 在打印结束的时候 那个dll 里发送消息到我的程序里
我看过dll的源码 其实它也是开了线程 对话框显示 打完 其实下面右下角的图标还在打印
我想改dll 加入代码 发给我 运行的程序 怎么解决???

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧