首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Siebel COM接口- PHP

问Siebel COM接口- PHP
EN

Stack Overflow用户
提问于 2012-08-25 03:48:24
回答 1查看 741关注 0票数 0

我可以在我的系统上访问名为sstchca.dll的动态链接库,它提供了访问Siebel业务层的函数。我能够在Excel中引用DLL并编写VBA程序来执行这些功能。下面是执行连接的示例VBA代码:

代码语言:javascript
复制
Private Function CreateConn(strConnect As String, strEnterprise As String, strPort As String, strPass As String) As Boolean
Dim errCode As Integer
Dim errText As String
Dim SiebelApp As SiebelDataControl    
Set SiebelApp = CreateObject("SiebelDataControl.SiebelDataControl.1")
CreateConn = True
SiebelApp.Login "host=""siebel://" & strConnect & ":" & strPort & "/" & strEnterprise & "/EAIObjMgr_enu""", _
                "sadmin", strPass

errCode = SiebelApp.GetLastErrCode()
If errCode <> 0 Then
    errText = SiebelApp.GetLastErrText
    CreateConn = False
    Exit Function

我们正在研究用PHP访问相同的COM接口的可行性,但我不确定从哪里开始?

有没有人能帮我写一些用PHP建立COM连接的示例代码,保持上面的VBA代码为基础,或者给我指出正确的方向,给PHP COM提供一些好的例子?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-25 04:27:35

我尝试将您的VBA代码转换为PHP代码,结果如下:

代码语言:javascript
复制
<?php

function CreateConn($strConnect, $strEnterprise, $strPort, $strPass) {
    global $errText;

    $SiebelApplication = new COM('SiebelDataControl.SiebelDataControl.1') or die("Unable to instantiate SiebelDataControl");
    $ConnStr = "host=\"siebel://".$strConnect.":".$strPort."/".$strEnterprise."/EAIObjMgr_enu\"";
    $SiebelApplication->Login($ConnStr, "sadmin", $strPass);
    $errCode = $SiebelApplication->GetLastErrCode();
    if ($errCode != 0) { 
        $errText = $SiebelApplication->GetLastErrText();
        return false;
    } else {
        return true;
    }
}

?>

Siebel软件没有安装在我的系统上,所以我不能说这段代码是否真的可以工作,但我希望它可以作为一个起点。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12115745

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档