android条码系统直接打印出库单笔记

来源:互联网 发布:nginx高可用 编辑:程序博客网 时间:2024/04/27 22:23

android需要调用webservice,然后webservic调用vb的dll,在dll中读取和编辑excel,然后直接打印excel(调用默认打印机)。

打印的关键问题在于webservice的启用账号:Local system/Network service/Local Service,

win7还有个新的账号applicationpoolidentity。

如果用applicationpoolidentity,你会发现,在本机直接测试webservice,可以打印出去,但是在android端就会提示:拒绝的权限,原因是该账号无法打开本地的应用程序excel,设置成localsystem就可以了。这时在android端就可以正常打印。

后来部署到正式服务器上之后,又出现问题,在服务器上无法打印出去,也不提示拒绝的权限,而是一直等待,后来跟踪代码发现,在执行到activesheet.printout时,卡在那里,但是为什么在本机上就不存在这个问题呢,后来发现打印机和本机是在一个网段,而服务器和打印机不在(有可能是这个原因,因为不好改ip所以不好验证,而且也实在找不到其它原因),而localsystem虽然有执行本机任何程序的权限,但是没有网络访问的权限,这也是打印时卡在哪里的原因,后来改用自定义账户(本机管理员),终于正常打印。

 总结:iis应用程序池的启用的用户权限问题。后续需仔细研究相关选择,因为目前用管理员,风险较大。




0 0