> 백엔드 개발 > PHP 튜토리얼 > 利用openoffice把office转成pdf,组件无法使用,请各位大侠帮忙。

利用openoffice把office转成pdf,组件无法使用,请各位大侠帮忙。

WBOY
풀어 주다: 2016-06-23 13:53:52
원래의
1393명이 탐색했습니다.

php 利用openoffice把office转成pdf格式 问题请教
代码如下:

function MakePropertyValue($name,$value,$osm){  	$oStruct = $osm->Bridge_GetStruct("com.sun.star.beans.PropertyValue");  	$oStruct->Name = $name;  	$oStruct->Value = $value;  	return $oStruct;  }function word2pdf($doc_url, $output_url){  	$osm = new COM("com.sun.star.ServiceManager") or die ("Please be sure that OpenOffice.org is installed.n");  	$args = array(MakePropertyValue("Hidden",true,$osm));  	$oDesktop = $osm->createInstance("com.sun.star.frame.Desktop");  	$oWriterDoc = $oDesktop->loadComponentFromURL	($doc_url,"_blank", 0, $args);  	$export_args = array(MakePropertyValue	("FilterName","writer_pdf_Export",$osm));  	$oWriterDoc->storeToURL($output_url,$export_args);  	$oWriterDoc->close(true);  }$output_dir = "D:/APMServ5.2.6/www/htdocs/pdf/";  $doc_file = "D:/APMServ5.2.6/www/htdocs/doc/abc.doc";  $pdf_file = "abc.pdf";  $output_file = $output_dir . $pdf_file;  $doc_file = "file:///" . $doc_file;  $output_file = "file:///" . $output_file;word2pdf($doc_file,$output_file);
로그인 후 복사
 


错误提示:
Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `com.sun.star.ServiceManager': 服务器运行失败 ' in D:\APMServ5.2.6\www\htdocs\phpinfo.php:13 Stack trace: #0 D:\APMServ5.2.6\www\htdocs\phpinfo.php(13): com->com('com.sun.star.Se...')

系统环境:apache, php5.2.6, php.ini已开启com,dcom ,
操作系统:win2003,  已安装过OpenOffice3.2, 已设置openoffice相关组件的访问权限,
已用命令行启动OpenOffice服务:
cd C:\Program Files\OpenOffice.org 3\program
C:\Program Files\OpenOffice.org 3\program>soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard

仍然不能访问,页面大概运行一分钟才提示以上错误,望大侠能帮忙解决,万分感谢!


回复讨论(解决方案)

他已经告诉你创建 com.sun.star.ServiceManager 服务失败了
这个与 php 没有关系

你需要先确认你的软件是否工作正常,即在 openoffice 中是否能够转换
如果能成功,再去检查 COM+ 服务是否启动

他已经告诉你创建 com.sun.star.ServiceManager 服务失败了
这个与 php 没有关系

你需要先确认你的软件是否工作正常,即在 openoffice 中是否能够转换
如果能成功,再去检查 COM+ 服务是否启动



在openoffice中能打开doc文档,并可导出为pdf文件
在控制面板->管理工具->组件服务中:
右侧查找组件服务->计算机->我的电脑下
 COM+应用程序下没找到相关组件
 DCOM配置下找到两项:
  1.OpenOffice.org 1.1文本文档
  2.OpenOffice.org.Service.Manager
设置上两项组件属性->安全->启动和激活权限,这里添加了guest。如有其它需设置的地方请指教,不胜感激!

重装最新版的openoffice 3.4.1问题解决!搞了一天,靠!
在这里还是谢谢唠叨大侠的帮助!

为什么我按照上面照抄 点击php的时候没有反应?

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿