如何呼叫MSN Messenger |
|
Kuang Cheng
一般會員 發表:11 回覆:25 積分:18 註冊:2002-03-16 發送簡訊給我 |
下面是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 發送簡訊給我 |
|
ddy
站務副站長 發表:262 回覆:2105 積分:1169 註冊:2002-07-13 發送簡訊給我 |
有安裝 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 發送簡訊給我 |
引言: 有安裝 MSN Messenger 在登錄檔裡就會有Messenger 的元件(ActiveX EXE) 我原本以為針對ActiveX DLL、ActiveX EXE 採用這樣的方法就能引用 不過執行階段出現了一個錯誤訊息, 『CoInitialize 尚未被呼叫』 大家一起來討論程式一執行就出現'CoInitialize has not been called'訊息, 可用如下的程式解決: 在主程式 .DPR中: uses OLE2, // <--- 確定加入OLE2 Windows;initialization CoInitialize(nil); // <-- 由程式啟動 CoInitialize()end 但是我的電腦一執行MsgrUIA := CreateOleObject('MessengerAPI.Messenger'); 就會出現"無效的類別字串",但我已經有裝MSN了??? ~~~Delphi K.Top討論區站長~~~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;噓~~~~~~沉思中…
------
~~~Delphi K.Top討論區站長~~~ |
sunocean
一般會員 發表:0 回覆:1 積分:0 註冊:2003-06-07 發送簡訊給我 |
不知你的操作系统是不是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;
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |