您好,登錄后才能下訂單哦!
本篇文章為大家展示了如何在PHP項目中調用COM組件,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
一、用VC創建COM組件
1、vc新建項目 -> ATL項目,輸入名稱ComTest,ComTest將作為COM組件的名稱。
2、到了ATL項目向導,不需要改動,完成向導。向導完成后,vc將會自動生成一系列的程序。
3、切換到類視圖,在ComTest項右鍵,添加類,選擇ATL簡單對象,
4、來到ATL簡單對象向導,輸入你要新建的類名 MyClass,完成向導。(注意了,還要填寫ProgID,有些vs會自動補全)
5、回到類視圖中,在IMyClass右鍵,添加方法,將會進入添加方法的向導。
6、來到添加方法向導,我們想實現計算2個數相加的功能,如下,參數a和b都是[in] Long,c為COM返回參數,為[out, retval] Long*,是一個指針。完成向導。
7、在MyClass.cpp找到我們剛剛添加的方法,add(LONG a, LONG b, LONG* c),修改如下:
復制代碼 代碼如下:
STDMETHODIMP CMyClass::add(LONG a, LONG b, LONG* c)
{
*c = a + b;
return S_OK;
}
8、編譯后,在生成目錄找到ComTest.dll,注冊到系統
復制代碼 代碼如下:
regsvr32 ComTest.dll
二、PHP調用COM組件
復制代碼 代碼如下:
<?php
$com = new COM("ComTest.MyClass") or die("無法調用ComTest");
echo $com->add(1, 2);
正常情況下,到這里就完成了。
但默認情況下,PHP調用COM組件的功能是沒有打開的。PHP執行以上代碼就會報 Fatal error: Class 'COM' not found 錯誤。修改PHP配置,如下:
復制代碼 代碼如下:
extension=php_com_dotnet.dll
上述內容就是如何在PHP項目中調用COM組件,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。