ActiveForm的問題 |
答題得分者是:frankiech
|
李國維
高階會員 發表:42 回覆:287 積分:235 註冊:2003-02-07 發送簡訊給我 |
|
GGL
資深會員 發表:104 回覆:600 積分:335 註冊:2006-11-05 發送簡訊給我 |
|
李國維
高階會員 發表:42 回覆:287 積分:235 註冊:2003-02-07 發送簡訊給我 |
|
GGL
資深會員 發表:104 回覆:600 積分:335 註冊:2006-11-05 發送簡訊給我 |
|
李國維
高階會員 發表:42 回覆:287 積分:235 註冊:2003-02-07 發送簡訊給我 |
|
GGL
資深會員 發表:104 回覆:600 積分:335 註冊:2006-11-05 發送簡訊給我 |
|
frankiech
中階會員 發表:7 回覆:78 積分:52 註冊:2002-08-29 發送簡訊給我 |
將你的ActiveForm 中的TActiveFormFactory改成TSafeActiveFormFactory
initialization // TActiveFormFactory.Create( TSafeActiveFormFactory.Create( ComServer, TActiveFormControl, Txxx, Class_xxx, 1, '', OLEMISC_SIMPLEFRAME or OLEMISC_ACTSLIKELABEL, tmApartment);TSafeActiveFormFactory 定義如下 : unit SafeFactory; interface uses ComObj, ActiveX, AXCtrls; const CATID_SafeForScripting: TGUID = '{7DD95801-9882-11CF-9FA9-00AA006C42C4}'; CATID_SafeForInitializing: TGUID = '{7DD95802-9882-11CF-9FA9-00AA006C42C4}'; type TSafeActiveFormFactory = class( TActiveFormFactory ) procedure UpdateRegistry( Register: Boolean ); override; end; TSafeActiveXControlFactory = class( TActiveXControlFactory ) procedure UpdateRegistry( Register: Boolean ); override; end; implementation procedure AddSafetyKeys( const ClassID: TGUID ); var ClassKey: string; begin ClassKey := 'CLSID\' GUIDToString( ClassID ); CreateRegKey( ClassKey '\Implemented Categories','',''); CreateRegKey( ClassKey '\Implemented Categories\' GUIDToString( CATID_SafeForScripting ),'',''); CreateRegKey( ClassKey '\Implemented Categories\' GUIDToString( CATID_SafeForInitializing ),'',''); end; procedure RemoveSafetyKeys( const ClassID: TGUID ); var ClassKey: string; begin ClassKey := 'CLSID\' GUIDToString( ClassID ); DeleteRegKey( ClassKey '\Implemented Categories\' GUIDToString( CATID_SafeForInitializing )); DeleteRegKey( ClassKey '\Implemented Categories\' GUIDToString( CATID_SafeForScripting )); DeleteRegKey( ClassKey '\Implemented Categories'); end; {TSafeActiveFormFactory} procedure TSafeActiveFormFactory.UpdateRegistry( Register: Boolean ); begin if Register then begin AddSafetyKeys( ClassID ); inherited UpdateRegistry( Register ); end else begin RemoveSafetyKeys( ClassID ); inherited UpdateRegistry( Register ); end; end; {TSafeActiveXControlFactory} procedure TSafeActiveXControlFactory.UpdateRegistry( Register: Boolean ); begin if Register then begin AddSafetyKeys( ClassID ); inherited UpdateRegistry( Register ); end else begin RemoveSafetyKeys( ClassID ); inherited UpdateRegistry( Register ); end; end; end. |
mickey56
一般會員 發表:4 回覆:7 積分:2 註冊:2002-04-18 發送簡訊給我 |
|
frankiech
中階會員 發表:7 回覆:78 積分:52 註冊:2002-08-29 發送簡訊給我 |
|
Butch
一般會員 發表:4 回覆:3 積分:1 註冊:2004-10-21 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |