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

尚未調用 Coinitialize

答題得分者是:FrederickPau
mr guan
一般會員


發表:1
回覆:4
積分:1
註冊:2003-01-22

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-01-22 11:40:38 IP:202.64.xxx.xxx 未訂閱
為什么我的專案加上ADO 或 webbrowser 等控件後﹐在 formCreate 的時候都出現 '尚未調用 Coinitialize' ? 應該怎樣解決﹖ 謝謝﹗ kwan yiu sang
------
kwan yiu sang
william
版主


發表:66
回覆:2535
積分:3048
註冊:2002-07-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-01-22 12:23:42 IP:147.8.xxx.xxx 未訂閱
Is your project a standalone windows application? If your project has some threads using COM/ADO/ActiveX (whatever name M$ called it), you need to CoInitialize and CoUninitialize within the threads (i.e. TThread.Execute method). If your project is a web application, I think you need to call CoInitialize and CoUninitialize within the dll. For IntraWeb application, set ComInitialization property to ciMultiThreaded for the server controller.
loverlin
一般會員


發表:1
回覆:35
積分:22
註冊:2002-07-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-01-22 14:30:49 IP:61.228.xxx.xxx 未訂閱
跨執行緒執行 COM 物件時,常會發生這種情形,你可以在 formCreate 時呼Coinitialize(nil); 在 formDestroy 時呼叫 CoUninitialize; kk-boy
------
kk-boy
mr guan
一般會員


發表:1
回覆:4
積分:1
註冊:2003-01-22

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-01-22 15:36:45 IP:202.64.xxx.xxx 未訂閱
謝謝你們﹗我是delphi的初學者﹐本來是寫VB的﹐公司忽然要我維護一個delphi程序﹐很多問題都不懂解決﹗我看見原本的程序有放ADO 組件的﹐不知道前人怎樣放﹐我放ADO就馬上有錯誤﹐找不出我放的跟舊有的有什麼不同﹗還有﹐怎樣declare Coinitialize 和 CoUninitialize ﹖ kwan yiu sang
------
kwan yiu sang
FrederickPau
資深會員


發表:4
回覆:161
積分:268
註冊:2002-11-04

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-01-23 05:10:03 IP:61.228.xxx.xxx 未訂閱
直接下就好了 CoInitialize; ... CoUninitialize;
mr guan
一般會員


發表:1
回覆:4
積分:1
註冊:2003-01-22

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-01-23 10:00:23 IP:202.64.xxx.xxx 未訂閱
試過了﹐但編譯的時候出現錯誤 Undeclared identifier: 'Coinitialize' ﹖ 我是用 Delphi 5 的﹐是這樣嗎寫嗎 ﹖ procedure myform.FormCreate(Sender: TObject); begin Coinitialize(nil); end; kwan yiu sang
------
kwan yiu sang
FrederickPau
資深會員


發表:4
回覆:161
積分:268
註冊:2002-11-04

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-01-23 13:10:34 IP:61.16.xxx.xxx 未訂閱
要 uses ActiveX 喔 CoInitialize(nil); ... CoUnInitialize;
loverlin
一般會員


發表:1
回覆:35
積分:22
註冊:2002-07-15

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-01-23 15:57:45 IP:61.228.xxx.xxx 未訂閱
CoInitialize 跟 CoUninitialize 在 Ole2裡 uses Ole2; Ole2.pas 在Delphi5\source\Rtl\Win 下 kk-boy
------
kk-boy
mr guan
一般會員


發表:1
回覆:4
積分:1
註冊:2003-01-22

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-01-27 12:04:15 IP:202.64.xxx.xxx 未訂閱
不好意思﹐那麼久才回復。氣死我了﹐我用ActiveX 就當機﹐用Ole2 就說file not found, 但project->Import Type Library 就說 Already exists ! 應該怎樣做 ﹖但我這個project 裡很多 ADO 控件﹐為何前人什麼都不用加而沒有錯誤 ﹖ kwan yiu sang
------
kwan yiu sang
FrederickPau
資深會員


發表:4
回覆:161
積分:268
註冊:2002-11-04

發送簡訊給我
#10 引用回覆 回覆 發表時間:2003-01-27 23:24:50 IP:61.228.xxx.xxx 未訂閱
你有上 ADOUpdate 嗎? 我用的是 Delphi5 ... 需要先上 ADOUpdate, 要不然會有些問題. 不知道你是不是??
mr guan
一般會員


發表:1
回覆:4
積分:1
註冊:2003-01-22

發送簡訊給我
#11 引用回覆 回覆 發表時間:2003-01-28 08:52:41 IP:202.64.xxx.xxx 未訂閱
我不知道喔 ﹗ 是什麼來的﹐怎樣做 ﹖我放過 webbrowser 控件﹐情況一樣﹐ 都是 Coinitialize 有問題 ﹗不只是ADO. 忘記說﹐如果新開一個專案﹐放ADO 控件就沒有錯誤﹐不知道舊專案藏了寫什麼﹗ kwan yiu sang
------
kwan yiu sang
系統時間:2024-04-20 14:04:57
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!