全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2117
推到 Plurk!
推到 Facebook!

如何呼叫MSN Messenger

 
Kuang Cheng
一般會員


發表:11
回覆:25
積分:18
註冊:2002-03-16

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-08-10 22:13:08 IP:61.224.xxx.xxx 未訂閱
下面是Visual Basic的程式碼,有好心人士教我改成Delphi的吧,要Import Messenger相關的Library! Private Sub Command1_Click() Dim MsgrUIA As New MessengerAPI.Messenger Dim mWindow As MessengerAPI.IMessengerWindow Dim MsgrContact As MessengerAPI.IMessengerContact Set MsgrContact = MsgrUIA.GetContact("hu_dana@hotmail.com", "") Set mWindow = MsgrUIA.InstantMessage(MsgrContact) mWindow.Show End Sub
kynix
初階會員


發表:37
回覆:100
積分:37
註冊:2002-06-01

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-08-11 09:49:03 IP:61.216.xxx.xxx 未訂閱
請問哪裡有Messenger相關的Library 智慧是命運的征服者
------
智慧是命運的征服者
ddy
站務副站長


發表:262
回覆:2105
積分:1169
註冊:2002-07-13

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-08-11 15:28:55 IP:61.59.xxx.xxx 未訂閱
有安裝 MSN Messenger 在登錄檔裡就會有Messenger 的元件(ActiveX EXE) 我原本以為針對ActiveX DLL、ActiveX EXE 採用這樣的方法就能引用 不過執行階段出現了一個錯誤訊息, 『CoInitialize 尚未被呼叫』 大家一起來討論    
var
    MsgrUIA :Variant;
    mWindow :Variant;
    MsgrContact :Variant;    begin
     MsgrUIA := CreateOleObject('MessengerAPI.Messenger');
     mWindow := CreateOleObject('MessengerAPI.IMessengerWindow');
     MsgrContact := CreateOleObject('MessengerAPI.IMessengerContact');
     MsgrContact := MsgrUIA.GetContact('hu_dana@hotmail.com', '');
     mWindow := MsgrUIA.InstantMessage(MsgrContact);
     mWindow.Show;
end;
噓~~~~~~沉思中…
領航天使
站長


發表:12216
回覆:4186
積分:4084
註冊:2001-07-25

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-08-11 17:45:30 IP:192.168.xxx.xxx 未訂閱
引言: 有安裝 MSN Messenger 在登錄檔裡就會有Messenger 的元件(ActiveX EXE) 我原本以為針對ActiveX DLL、ActiveX EXE 採用這樣的方法就能引用 不過執行階段出現了一個錯誤訊息, 『CoInitialize 尚未被呼叫』 大家一起來討論
var
    MsgrUIA :Variant;
    mWindow :Variant;
    MsgrContact :Variant;    begin
     MsgrUIA := CreateOleObject('MessengerAPI.Messenger');
     mWindow := CreateOleObject('MessengerAPI.IMessengerWindow');
     MsgrContact := CreateOleObject('MessengerAPI.IMessengerContact');
     MsgrContact := MsgrUIA.GetContact('hu_dana@hotmail.com', '');
     mWindow := MsgrUIA.InstantMessage(MsgrContact);
     mWindow.Show;
end;
噓~~~~~~沉思中…
程式一執行就出現'CoInitialize has not been called'訊息, 可用如下的程式解決: 在主程式 .DPR中: uses OLE2, // <--- 確定加入OLE2 Windows;initialization CoInitialize(nil); // <-- 由程式啟動 CoInitialize()end 但是我的電腦一執行MsgrUIA := CreateOleObject('MessengerAPI.Messenger'); 就會出現"無效的類別字串",但我已經有裝MSN了??? ~~~Delphi K.Top討論區站長~~~
------
~~~Delphi K.Top討論區站長~~~
sunocean
一般會員


發表:0
回覆:1
積分:0
註冊:2003-06-07

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-06-09 23:36:59 IP:218.2.xxx.xxx 未訂閱
不知你的操作系统是不是XP,我的是。我检查过MSDN上关于Messenger调用的API资料。 http://www.microsoft.com/downloads/details.aspx?FamilyID=457d63c0-81b3-4a38-b88f-af78ba5ac550&DisplayLang=en Windows Messenger 4.7 API 不知对你有没有用? 在帮助文件中找到Messenger的CLSID为B69003B3-C55E-4B48-836C-BC5946FC3B28 再在注册表中查找到注册的ActiveX Server,得到ProgID,在程序中就可以调用了: var MsgrUIA: Variant; begin MsgrUIA := CreateOleObject('Messenger.UIAutomation'); end;
系統時間:2024-05-05 4:54:27
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!