当前位置:首页 » 编程语言 » php的com组件

php的com组件

发布时间: 2024-12-28 06:17:01

php中有个com组件,它里面都有哪些属性和方法可以调用呢

先到PHP.INI中打开COM选项,com.allow_dcom = true


PHP 5.4.5后,com/dotnet 模块已经成了单独的扩展,所以需要在PHP.ini中配置extension=php_com_dotnet.dll,如果PHP VERSION<5.4.5 则不需要。否则的话,可能就是报错 Fatal error: Class 'COM' not found 了


配置方法为:只需在扩展列表里添加extension=php_com_dotnet.dll即可

另外需要了解的是,COM组件虽然也是DLL扩展,但它不是PHP扩展,所以把Senc.dll拷贝到php/ext 目录,然后在PHP.INI里加载是错误的,PHP也不认识它


配置完毕后可以测试下,语句为

$word=newCOM("word.application")ordie("UnabletoinstanciateWord");
print"LoadedWord,version{$word->Version} ";

上面语句本机必须安装了office才可以

openoffice的为:

$obj=newCOM("com.sun.star.ServiceManager")ordie("UnabletoinstanciateWord");

⑵ 求急送50元Q币或红包 php调用COM组件 报错 想把word格式转成html格式。。。

$word=new COM("word.application") or die("无法启动COM组件"); //or 前面需要空格
另外,注意com组件功能只支持windows 版本的php

⑶ 如何用PHP生成word文档

PHP 生成 word 文档,可以考虑以下两类办法:
1. 利用 windows 系统提供的 com组件。
这种方法的原理,是使用 php 的调用 com 组件功能函数,如果系统里安装过 office 的服务器,就可以调用 word.application 。

2. 利用PHP将内容写入doc文件之中。
这种方法,难分为两种,一种是生成mht格式写入word,另一种是编写纯 HTML 格式写入word。这种方法是基于 word 对 html 的良好支持。

⑷ 释放COM组件php

$sm=new COM("com.sun.star.ServiceManager");
$d=$sm->createInstance("com.sun.star.frame.Desktop");

...
$d->terminate();//关闭
$sm->dispose();//关闭

⑸ php能够调用C或C++写的.dll文件吗 - PHP进阶讨论

可以我写过一个调用SAP BO的COM,要调用必须先安装好COM组件的,在注册表查出组件名字(如果你不清楚组件名字的话)我把我写过的函数给你看看
/**
* 加载COM组件
*/
private function createCompanyObject() {
$company = false;
try {
$company = new COM("SapBobsCom.Company");//这样就可以获取COM组件了
} catch(Exception $e) {
$this->errorMsg = $e->getMessage();
}
return $company;
}

⑹ 如何用PHP调用自己编写的COM组件

首先写ActiveX Dll:

新建一个VB6工程,ActiveX Dll将工程命名为P_test,类名为c_test ,类的文件内容如下:

Option Explicit

Private MyscriptingContext As scriptingContext

Private MyApplication As Application

Private MyRequest As Request Private MyResponse As Response

Private MyServer As Server

Private MySession As Session Public

Sub OnStartPage(PassedscriptingContext As scriptingContext)

Set MyscriptingContext = PassedscriptingContext

Set MyApplication = MyscriptingContext.Application

Set MyRequest = MyscriptingContext.Request

Set MyResponse = MyscriptingContext.Response

Set MyServer = MyscriptingContext.Server

Set MySession = MyscriptingContext.Session

End Sub

Public Sub OnEndPage()

Set MyscriptingContext = Nothing

Set MyApplication = Nothing

Set MyRequest = Nothing

Set MyResponse = Nothing

Set MyServer = Nothing

Set MySession = Nothing

End Sub

Public Function Test_Number(num) As Variant

If num 0 Then Get_Number_Attrib = 1

If num = 0 Then Get_Number_Attrib = 0

End Function

编译生成p_test.dll文件

注册

提示符下运行:regsvr32 p_test.dll

编写php文件,test.php4代码如下:

<?php

$b=new COM("p_test.c_test");

$a=$b->Test_Number(-454);

echo $a;

?>

可能碰到的问题是,编译工程时通不过,要将Microsoft Active Server Pages Object Library引用进来,具体实现"Project->References"找到改库,并勾上 。

热点内容
写php的软件 发布:2024-12-28 21:11:41 浏览:644
linux软件安装包 发布:2024-12-28 20:54:05 浏览:131
编程回消息 发布:2024-12-28 20:52:15 浏览:928
bat脚本卸载软件 发布:2024-12-28 20:17:14 浏览:743
sqlserver的ip 发布:2024-12-28 20:16:58 浏览:359
c语言模块 发布:2024-12-28 20:10:29 浏览:517
安卓蚂蚁怎么唱 发布:2024-12-28 20:00:21 浏览:163
编程课必须 发布:2024-12-28 19:58:49 浏览:782
怎么合理配置家庭资产 发布:2024-12-28 19:57:10 浏览:317
编译pl2303安卓驱动 发布:2024-12-28 19:53:09 浏览:365