| 首页 | 新闻 | 网页 | 设计 | 色彩 | 原创 | 视觉 | 素材 | 动漫 | 酷站 | 策划 | 文案 | 访谈 | 运营 | 编程 | 数据库 | 服务器 | 下载 | 图库 | 
您的位置: 幽幽天空 > 网页 > 编程开发 > PHP教程 > 高级应用教程 > 文章正文 用户登录
1MajorHost免费ph
5GBFreephp空间
200M免费php空间
免费PHP空间
免费ASP空间与免费
免费5G/PHP/mysql
一个简单的用Acti
Macromedia Flash
去掉Flash Player
如何禁止flashpla

PHP4调用自己编写的COM组件           

PHP4调用自己编写的COM组件

作者:佚名 来源:不详 更新:2006-8-25 21:05:35 错误报告 我要投稿
搞完了PHP4调用JavaBean,又想去试试调用COM,开始以为很难,自己用VB6写了一个Active Dll在PHP4中调用,马上成功,比调用javabean方便多了,下面讲一下我的步骤。

一:用VB6写Activex Dll

代码如下:

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 = 1

If num = 0 Then Get_Number_Attrib = 0

End Function

具体方法如下:新建一个VB6工程,ActiveX Dll将工程命名为P_test,类名为c_test

类的文件内容如上。

编译生成p_test.dll文件

二:注册

提示符下运行:regsvr32 p_test.dll

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

<?

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

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

echo $a;

?>

运行php4文件将显示-1

可能遇到的问题是,编译工程时通不过,要将

Microsoft Active Server Pages Object Library

引用进来,具体实现“Project->References”找到改库,并勾上

相比之下,PHP4调用com应该比PHP4调用javabean好哦,因为毕竟是Ms系统嘛。大家也可以去自己编写调用数据库的控件,用PHP4调用,从某种程度上,和PHP调用javabean一样,可以说,实现了“隐藏源代码”。

欢迎有兴趣的朋友交流。
文章录入:skyuu    责任编辑:skyuu 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    发表评论:
    姓名:  评 分: 1分 2分 3分 4分 5分
     
  • 严禁发表危害国家安全、政治、黄色淫秽等内容的评论。
  • 用户需对自己在使用幽幽天空服务过程中的行为承担法律责任。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表机友个人观点,与本网站立场无关。