php执行vbs脚本

wodecuoshi230 2012-08-30 02:32:07
vbs是打印excel文件,并执行打印操作。 使用cmd命令和直接运行vbs程序,都可进行打印。 而php调用vbs时,$returnvalue输出为0(代表执行成功),可就是不执行打印操作。

PHP:

<?php
system("C:/print.vbs", $returnvalue);
echo $returnvalue;
?>

=====================
vbs :
templatePath="C:\2.xls"
'create object
Set oExcel=CreateObject("Excel.Application")
oExcel.DisplayAlerts = False
Set tmpExcel=oExcel.Workbooks.Open(templatePath,3,False)
oExcel.ActiveSheet.PageSetup.PrintGridLines = False
oExcel.ActiveSheet.PrintOut
oExcel.ActiveWorkBook.Saved = False
oExcel.Quit
...全文
397 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
conqweal 2012-11-25
  • 打赏
  • 举报
回复
不能执行VBS处理 1. 点击开始->运行,输入日regedit.按确定。 2. 访问以下键值: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\COM3 3. 右击选择导出。完成后删除此键值。 4. 访问以下键值: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole 5. 右击选择导出。完成后删除以下键值 DefaultAccessPermissions MachineAccessRestriction MachineLaunchRestriction 6. 重启计算机。重启完成后执行一次添加/删除Windows组件。 二、注册表导入 Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole] "DefaultLaunchPermission"=hex:01,00,04,80,64,00,00,00,80,00,00,00,00,00,00,00,\ 14,00,00,00,02,00,50,00,03,00,00,00,00,00,18,00,01,00,00,00,01,01,00,00,00,\ 00,00,05,12,00,00,00,00,00,00,00,00,00,18,00,01,00,00,00,01,01,00,00,00,00,\ 00,05,04,00,00,00,00,00,00,00,00,00,18,00,01,00,00,00,01,02,00,00,00,00,00,\ 05,20,00,00,00,20,02,00,00,01,05,00,00,00,00,00,05,15,00,00,00,a0,5f,84,1f,\ 5e,2e,6b,49,ce,12,03,03,f4,01,00,00,01,05,00,00,00,00,00,05,15,00,00,00,a0,\ 5f,84,1f,5e,2e,6b,49,ce,12,03,03,f4,01,00,00 "MachineLaunchRestriction"=hex:01,00,04,80,60,00,00,00,70,00,00,00,00,00,00,00,\ 14,00,00,00,02,00,4c,00,03,00,00,00,00,00,18,00,1f,00,00,00,01,02,00,00,00,\ 00,00,05,20,00,00,00,20,02,00,00,00,00,18,00,1f,00,00,00,01,02,00,00,00,00,\ 00,05,20,00,00,00,32,02,00,00,00,00,14,00,0b,00,00,00,01,01,00,00,00,00,00,\ 01,00,00,00,00,01,02,00,00,00,00,00,05,20,00,00,00,20,02,00,00,01,02,00,00,\ 00,00,00,05,20,00,00,00,20,02,00,00 "MachineAccessRestriction"=hex:01,00,04,80,5c,00,00,00,6c,00,00,00,00,00,00,00,\ 14,00,00,00,02,00,48,00,03,00,00,00,00,00,14,00,07,00,00,00,01,01,00,00,00,\ 00,00,05,07,00,00,00,00,00,18,00,07,00,00,00,01,02,00,00,00,00,00,05,20,00,\ 00,00,32,02,00,00,00,00,14,00,07,00,00,00,01,01,00,00,00,00,00,01,00,00,00,\ 00,01,02,00,00,00,00,00,05,20,00,00,00,20,02,00,00,01,02,00,00,00,00,00,05,\ 20,00,00,00,20,02,00,00 "EnableDCOM"="Y" 三、MSDTC 重新安装 msdtc -uninstall msdtc -install
happypiggy2010 2012-08-31
  • 打赏
  • 举报
回复
这个是头一次听。

看看那个activex能帮你。如果是单独的。试试command line调用。
wodecuoshi230 2012-08-31
  • 打赏
  • 举报
回复
非常不解! 请问,为什么在XP下可以正常运行,而win7下则没有效果呢[Quote=引用 4 楼 的回复:]
你当人家都在 XP 下工作呀?
[/Quote]
wodecuoshi230 2012-08-31
  • 打赏
  • 举报
回复
也相关另外一种途径:通过cmd,调用excel文件,执行打印命令。 但未在excel中找到打印命令
wodecuoshi230 2012-08-30
  • 打赏
  • 举报
回复
请问 ,有没有什么可以解决的办法[Quote=引用 3 楼 的回复:]

这个权限问题吧
[/Quote]
wodecuoshi230 2012-08-30
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

你当人家都在 XP 下工作呀?
[/Quote]请问 ,有没有什么可以解决问题的办法
xuzuning 2012-08-30
  • 打赏
  • 举报
回复
你当人家都在 XP 下工作呀?
黄袍披身 2012-08-30
  • 打赏
  • 举报
回复
这个权限问题吧
wodecuoshi230 2012-08-30
  • 打赏
  • 举报
回复
有人知道原因吗
wodecuoshi230 2012-08-30
  • 打赏
  • 举报
回复
急。 有人知道吗

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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