ActiveX控制項在IE頁面中作用範圍的簡單實驗

2021-06-03 03:20:56 字數 821 閱讀 1339

實驗目的

頁面跳轉時,object引用的控制項會被釋放,該實驗測試了如何在frameset中實現頁面跳轉時,object引用的變數保持狀態一致不被釋放

一、測試物件的製作

activex控制項,提供三個外部可以呼叫的介面:

1. void begintransaction( )        ---申請變數的記憶體控制項

2. void setvalue(double a)         ----為變數賦值

3. double getvalue()                  ----獲取變數的值

二、常規頁面中通過form提交表單

頁面1:

頁面2:

結果:在頁面2中無法獲取值,在表單提交的時候已經釋放了object中引用的控制項

三、在frameset中提交表單

主頁面:

頁面1:

頁面2:

結果:在frameset中的子頁面1,通過表單提交跳轉到頁面2

此時通過parent.calc.getvalue()的方法能夠獲得在子頁面1中設定的值(parent.calc.setvalue())

四、在frameset中兩個frame之間的呼叫

主頁面:

子頁面1:

子頁面2:

結果:

在頁面2中也可以獲得子頁面1中設定的值

結論:

object引用的activex控制項在頁面跳轉的時候會被析構,解決方法是使用frameset,在父頁面中載入控制項,把需要跳轉的頁面放在frame中,子頁面通過parent來呼叫object引用的activex控制項

據說可以將Activex控制項在IE中不顯示安全提示

據說可以將activex控制項在ie中不顯示安全提示,先收藏,有空再驗證。轉csdnshepherds 建立component categories中的初始化安全和指令碼安全項 hresult createcomponentcategory catid catid,wchar catdescript...

在ActiveX控制項中引入窗體技術

一 引入dialog技術 下面介紹在製作activex控制項時引入有模式對話方塊技術,製作步驟如下 建立一新的mfc activex controlwizard專案,取名為hello,其他用預設選項 在resourceview頁中新增一對話方塊資源,命名為idd hellodialog,可以在對話方...

在ActiveX控制項中引入窗體技術

在activex控制項中引入窗體技術 一 引入dialog技術 下面介紹在製作activex控制項時引入有模式對話方塊技術,製作步驟如下 建立一新的mfc activex controlwizard專案,取名為hello,其他用預設選項 在resourceview頁中新增一對話方塊資源,命名為idd...