我们公司有一个处理TIFF图像的流程。我有一个项目,我希望能够捕获人们收到的电子邮件,并让他们将其传递给我们的成像过程。现在转发电子邮件并不是一个真正的选择,但我们最初的想法是,我们可以创建一个Outlook插件来创建并将电子邮件的图像发送到我们的内部Web服务,它就可以正常工作。
我正在使用VS2010和Outlook 2007在Windows 7上进行开发。
我有基本的插件框架设置 - 似乎工作正常。插件就在那里,弹出一个常规的Windows窗体,我可以在那里做我的东西。但现在我遇到了问题。首先,我将利用可以写入TIFF的内置Microsoft Office Document Image Writer。但是,这似乎并未安装在Windows 7上作为Office 2007的一部分安装。然后我发现一些引用它首先在Win7 64bit上不起作用,并且微软正在逐步淘汰它们以支持他们的XPS打印机无论如何。
然后我开始认为我可以使用PDFCreator。这种工作,除了看起来我必须在客户端机器上实际安装PDFCreator。我真的希望我可以捆绑dll而PDFCreator本身可以“打印”,但它似乎依赖于你将活动打印机设置为“PDFCreator”并仍然打印到那个。我可能会在第一时间向用户推送自定义插件时遇到问题;我不知道是否可以将新打印机作为一项要求推出。
最重要的是,一旦它运行,你显然无法在Outlook中设置活动/默认打印机。因此,我计划运行插件,将默认打印机更改为PDFCreator,打印它,然后将其更改为无论如何都不会起作用。
我们真的希望能够捕获电子邮件,就像用户打印出来并扫描它们一样,这就是他们现在必须做的事情。如果我能帮忙的话,我真的不想依赖复制/粘贴到另一个应用程序。
Sooooooo,我可能还有其他选择吗?是否有任何接近Windows或Office中的本机功能可以让我打印到某些东西并最终获得TIFF?看起来我不得不尝试将一堆第三方工具串起来吗?看起来“打印”电子邮件的唯一方法是执行MailItem.PrintOut()命令,该命令只会转到当前的默认打印机。是否还有其他可用的TIFF打印件不需要在最终用户的机器上安装新的虚拟打印机?还有其他想法吗?谢谢你的帮助!
答案 0 :(得分:0)
虽然你在问题的开头就排除了它......
假设您需要在中央位置而不是员工桌面上的那些tiff ...我仍然建议您让您的插件将相应的邮件转发到中心位置(作为自动邮件的附件,或者可能只是将其写入某个网络位置的队列文件夹),然后让一个中央进程将其捡起并打印到tiff文件。
除非您对公司的客户端计算机有严格的控制权(从声音来看,您没有),否则您真的希望将“在Outlook中切换打印机”转移到远离客户端的一些变幻无常。
这并不意味着这种方法也不需要黑客攻击,因为中央流程将运行outlook来完成工作。
我认为重要的是你的tiff看起来好像是从Outlook打印的,如果不是,请将其作为额外信息添加到你的问题中,因为它会打开新的路线。就像捕获电子邮件屏幕渲染并将 放在tiff文件中一样,这可以在任何桌面计算机上完成。