求助:关于PHP 读写 Word文档的问题!

cwind 2004-12-09 10:12:42
1、尝试了6台机器,硬件配置差不多,windows2000+php4.4.5(一台4.4.3)+Apache/1.3.29 (Win32) ,其中有三台PHP可以读写word文件。另三台出现如下的错误:
Warning: (null)(): Unable to obtain IDispatch interface for CLSID {000209FF-0000-0000-C000-000000000046}: 服务器运行失败
检查注册表的CLSID未发现异常,请教各位大侠其中的原因。
2、使用PHP写入word文档的时候发现如果写汉字(或者其他的双字节的文字)的时候在文字的最后出现乱码,似乎是通过com写字符,自动转换unicode的时候出现字符串的长度计算错误,以至于出现了乱码填充。
代码如下
<?
$word = new COM("word.application") or die("无法启动 Word 程序!");
$word->Visible = 0;

$n=$word->Documents->Add();

## 分节符号
$n->Sections->Add($word->Selection->Range,0);

## Sections(1)第一小节
$s1=$n->Sections(1);
$s1->PageSetup->BottomMargin=10;


## Paragraphs(1) 第一段落
$s1->Range->InsertBefore("企鹅帝国元年-诗词多首排版测试");
$s1->Range->InsertParagraphAfter;
$s1->Range->InsertBefore("大标题-诗词歌赋\n");
$word->DefaultSaveFormat=""; ## 存档模式,默认DOC
$word->Documents[1]->SaveAs("D:\\test\\a.doc");
$word->Quit();
$word->Release();
$word = null;
?>
这是参考了网上的一段代码,我曾经自己写的也是类似代码(COM("word.application",null,CP_UTF8) ;$word->Selection->TypeText($str);),也出现同样的问题。
请问大家如何解决,非常感谢!!!!
...全文
249 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
cwind 2004-12-09
顶一下,再谢
回复
spacet 2004-12-09
看手册啊,手册上有例子
回复
wujinmei 2004-12-09
我的是下面的错误呀,
Fatal error: Uncaught exception 'com_exception' with message 'Source: Microsoft Word
Description: 无法打开宏储存。' in E:\WWW\word.php:12 Stack trace: #0 {main} thrown in E:\WWW\word.php on line 12
回复
cwind 2004-12-09
再顶一下
问题1:似乎那几台机器上PHP调用COM的接口出问题了。我自己写的DLL用PHP调用也不行,VB就没有问题,什么问题呢?
问题2:就算是使用PHP+DLL然后用DLL调用word写入的值也有乱码,同样写入txt的就没问题。进展不大。郁闷ing
回复
cwind 2004-12-09
ocde(酬英雄志,动儿女情),谢谢。

你要关于什么方面的PHP源码呢?这个是我们面向公司的特定功能的程序。:)
回复
ocde 2004-12-09
不知道,帮你顶!
我也很需要一套成熟的php源码,你这个搞定了能不能发给我啊 ?
谢谢了:)
ocdeyin@yahoo.com.cn
回复
cwind 2004-12-09
顶一下,再再谢:)
回复
相关推荐
发帖
基础编程
创建于2007-09-28

2.1w+

社区成员

从PHP安装配置,PHP入门,PHP基础到PHP应用
申请成为版主
帖子事件
创建了帖子
2004-12-09 10:12
社区公告
暂无公告