我通過PHP「COM」連接到與C#,C++等兼容的API。 我已成功與應用程序建立連接並嘗試使用「out」通過COM參數並獲得「類型不匹配」錯誤。是「out」參數,並且應該包含響應,然後是false。我不確定它是否會失敗,或者如果它失敗了,但無論如何我無法讓這個工作。PHP COM和C#「Out」和布爾參數
的C#示例如下:
EdmViewInfo[] Views = null;
vault.GetVaultViews(out Views, false);
的PHP代碼如下所示:
$this->epdm = new COM('ConisioLib.EdmVault') or die("Cannot open vault.");
...
$this->aviews = array();
try {
$this->epdm->GetVaultViews($this->aviews, False);
} catch (Exception $e) {
echo 'Caught exception: ', $e->getMessage(), "\n";
}
我得到以下返回的錯誤: 捕捉到異常:參數1:類型不匹配。
希望有人能幫助!
'epdm'字段是如何初始化的?它是一個實際的PHP'COM'類實例還是別的? (例如,圍繞PHP'COM'類調用的包裝器層?) – Dai
'$ this-> epdm = new COM('ConisioLib.EdmVault')或死(「無法打開保管庫。」);'這是初始化。 連接初始化,我可以登錄並獲取一些基本信息,所以我知道它的工作原理。 'EdmViewInfo [] Views = null; vault.GetVaultViews(out Views,false);' C#示例對不起,以上是VB – Dyluck