Siebel COM接口 - Python

时间:2013-05-23 19:45:21

标签: python-2.7 com siebel

我被要求探索可以访问 Siebel COM 界面的各种方法,以便评估最佳解决方案。

到目前为止,我们已经能够通过Excel(VBA)和PHP访问COM接口,现在我需要探索是否可以在Python中使用它。从我最初的研究中我知道python确实提供了使用win32 api访问DLL的功能,但没有全面的教程可以让我入门。

在我们用于excel和php的代码片段下面。

Excel代码段

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代码段

<?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;
}
}

?>

有人可以通过 python 的示例代码段来帮助我完成同样的事情,即创建连接吗? 感谢

1 个答案:

答案 0 :(得分:1)

要了解更多信息,您可以参考Python Programming on Win32

首先,您可以尝试使用代码段

import win32com.client
oSiebelApp = win32com.client.Dispatch("SiebelDataControl.SiebelDataControl.1")
oSiebelApp.Login("Connection String")