線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2936
推到 Plurk!
推到 Facebook!

Activex顯示問題

缺席
surprise
一般會員


發表:11
回覆:3
積分:2
註冊:2004-05-27

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-08-22 19:12:14 IP:220.135.xxx.xxx 訂閱
現在我利用一個網頁去開啟另一個網頁 網頁上有鑲Activex第一次開都很正常
可是關掉後再開第二次就開不起來了 但是網頁都關掉後再重新來一遍就又可以開
想請問一下這是什麼問題? 這是有些電腦才有的情況 並不是全部的電腦
請問有任何解法嗎
gemini07
一般會員


發表:29
回覆:18
積分:14
註冊:2003-04-20

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-08-27 15:29:52 IP:220.132.xxx.xxx 訂閱
Hi,
我目前也是遇到同樣的問題,初步判斷好像跟IE上的Google或yahoo工具列有關,
即使把網頁關掉,ocx檔案也是被佔用的狀態,導致第二次就無法正常運作ActiveX,
如果暫時從檢視-->工具列中關掉工具列,又可以正常運作。

而今天很神奇的是...

我把IE上所有的工具列移除,然後再重新安裝,我的ActiveX又完全可以正常運作,
即使開很多次網頁都一樣,所以目前對這問題還是不解真正是什麼原因

我將繼續找其他電腦做測試。

希望我的發現可以對你有些幫助

如果你有任何發現,也要po上來讓大家知道,因為我也很迫切想知道問題如何解決
gemini07
一般會員


發表:29
回覆:18
積分:14
註冊:2003-04-20

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-09-07 16:11:56 IP:220.132.xxx.xxx 訂閱
目前還不能百分百確定是工具列造成的影響,但ParkingWindow的Bug的確是有人發現的BCB問題之ㄧ。
這是BCB中ParkingWindow的Bug,亦即在重複載入OCX時,發現有時不能正常初始化的問題。
修改BCB directory\ Include \ Atl \ atlvcl.h 檔案
//VCL註解原來的程式碼
//HWND hwndParkingWindow = Axctrls::ParkingWindow();

//修改為以下程式碼
#define VclPackingWin (*(long*)(*(long*)((char*)(Axctrls::ParkingWindow) 0x1C)))
HWND hwndParkingWindow = (HWND)VclPackingWin;
if (!IsWindow(hwndParkingWindow)) {
VclPackingWin = 0; //強制清空
hwndParkingWindow = Axctrls::ParkingWindow(); //重新分配
}

你可以試試看對這問題是否有幫助
如果可以的話,麻煩告知一下^^

sfhuang
一般會員


發表:0
回覆:2
積分:0
註冊:2004-06-13

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-09-10 16:41:47 IP:140.131.xxx.xxx 訂閱
Hi
回報一下
我測試狀況比較不同~我在IE將檢視的工具列隱藏沒有作用,必須在工具的管理附加元件裡暫時將某些元件Disable才有作用
我沒有裝Yahoo or Google toolbar 元件 , 這裡影響我的是flashget元件

依照gemini07兄的方法在修改atlvcl.h 後,原本不能開啟的網頁可以開啟了~
但是卻引發了其他的問題,會出現code:1400.無效視窗控制碼

gemini07
一般會員


發表:29
回覆:18
積分:14
註冊:2003-04-20

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-09-10 23:40:50 IP:122.124.xxx.xxx 訂閱

===================引 用 sfhuang 文 章===================
Hi
回報一下
我測試狀況比較不同~我在IE將檢視的工具列隱藏沒有作用,必須在工具的管理附加元件裡暫時將某些元件Disable才有作用
我沒有裝Yahoo or Google toolbar 元件 , 這裡影響我的是flashget元件

依照gemini07兄的方法在修改atlvcl.h 後,原本不能開啟的網頁可以開啟了~
但是卻引發了其他的問題,會出現code:1400.無效視窗控制碼

通常會發生這個訊息,大部份都是在Form.OnDestory事件中,又在執行到Close Method所造成的,請參考以下連結:
http://delphi.ktop.com.tw/topic.php?topic_id=29961

可以檢查一下你的程式裡面是否有這種情況喔
sfhuang
一般會員


發表:0
回覆:2
積分:0
註冊:2004-06-13

發送簡訊給我
#6 引用回覆 回覆 發表時間:2007-09-11 09:24:05 IP:140.131.xxx.xxx 訂閱

===================引 用 gemini07 文 章===================

通常會發生這個訊息,大部份都是在Form.OnDestory事件中,又在執行到Close Method所造成的,請參考以下連結:
http://delphi.ktop.com.tw/topic.php?topic_id=29961

可以檢查一下你的程式裡面是否有這種情況喔


恩~我檢查過code , 裡面我沒有對任何
OnDestory or Close 處理, 而我的 code:1400.無效視窗控制碼 是發生在點選IE 上的 X 後 ,再重新開啟連結
此時IE 呈現虛線框,當滑鼠點選啟用後才出現的訊息

我想我會再找時間重新寫一個較單純的再試看看~ 不知發問的
surprise 兄的測試狀況如何?
surprise
一般會員


發表:11
回覆:3
積分:2
註冊:2004-05-27

發送簡訊給我
#7 引用回覆 回覆 發表時間:2008-11-25 17:28:57 IP:60.250.xxx.xxx 訂閱
後來我發現如同你們所說的 都會出現這些問題   後來我把某些元件給移除掉就可以了  例如flashget或者skype 3.0等軟體移除之後就不會有了
目前猜測是OCX會去做檢查更新是屬於下載的動作 那麼這些軟體就會去LOCK住OCX導致第二次開起來就會有問題
那麼就必須要關掉所有的IE甚至重開機 再重新開起來才行
系統時間:2017-10-21 7:36:28
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!