ASP與ActiveX控制項互動實戰(二)

來源:互聯網
上載者:User
active|activex|互動|控制項 龍捲風

關鍵字:ASP,ActiveX控制項,數位簽章,安全



我們來看看如何從服務端擷取資料,傳遞到ActiveX控制項中。

1) 初始化時使用參數綁定

2) 運行時得到資料



開啟vb6,建立ActiveX控制項工程。

工程名:fOcx,使用者控制項名:UC2

為了方便,我們使用ActiveX控制項介面嚮導…,菜單->增益集->增益集管理器->VB 6 ActiveX控制項介面嚮導。確定即可。



開啟ActiveX控制項介面嚮導,下一步,對於可用名稱和選定名稱我們預設下一步,建立自訂成員,GetInfo類型:屬性,下一步,共有方法中選擇我們剛才添加的GetInfo,映射到控制項選擇TxtInfo,成員選擇Text,下一步直到完成。代碼視窗中會產生一些我們不需要的,刪除,



'注意!不要刪除或修改下列被注釋的行!

'MappingInfo=txtinfo,txtinfo,-1,Text

Public Property Get GetInfo() As String

GetInfo = txtinfo.Text

End Property



Public Property Let GetInfo(ByVal New_GetInfo As String)

txtinfo.Text() = New_GetInfo

PropertyChanged "GetInfo"

End Property



Private Sub Command1_Click()

Label2.Caption = GetInfo()

End Sub



'從存貯器中載入屬性值

Private Sub UserControl_ReadProperties(PropBag As PropertyBag)



txtinfo.Text = PropBag.ReadProperty("GetInfo", "Text1")

End Sub



'將屬性值寫到儲存空間

Private Sub UserControl_WriteProperties(PropBag As PropertyBag)



Call PropBag.WriteProperty("GetInfo", txtinfo.Text, "Text1")

End Sub



編譯成OCX控制項.運行產生的測試頁.Text中預設的是Text1

如何將伺服器端的資料傳遞給OCX呢?



使用Microsoft ActiveX Control Pad這個工具,可以很容易找到.

直接用這個工具把測試頁開啟.

菜單->Edit->Edit Activex Control,呵呵,開啟了一個可視化的介面.

看到了吧,有一個屬性框,我們可以進行設定,設定完成以後的代碼如下:

<HTML>

<HEAD>

<TITLE>New Page</TITLE>

</HEAD>

<BODY>

<OBJECT ID="GetClient" WIDTH=507 HEIGHT=440

CLASSID="CLSID:890D1028-298B-45CF-9A64-6ED5A5BACBC9"

CODEBASE="http://localhost/xml/fOcx.ocx">

<PARAM NAME="_ExtentX" VALUE="13414">

<PARAM NAME="_ExtentY" VALUE="11642">

<PARAM NAME="GetInfo" VALUE="這是ocx得到的用戶端讀卡機的資訊">

</OBJECT>

</BODY>

</HTML>

增加了ID,ID就是我們用來訪問的標誌.還有我們的屬性GetInfo,我們也設定初始值了

好了,運行.

Text中就出現了我們設定的值”這是ocx得到的用戶端讀卡機的資訊”



我們把上邊的頁面改成asp的,看代碼:

<HTML>

<HEAD>

<TITLE>龍捲風測試頁</TITLE>

</HEAD>

<BODY>

<%

dim sValue

sValue="這是ocx得到的用戶端讀卡機的資訊"

%>

<OBJECT ID="GetClient" WIDTH=507 HEIGHT=440

CLASSID="CLSID:56DFCA88-F5B8-4879-853B-97FE504423FD"

CODEBASE="http://localhost/xml/fOcx.ocx">

<PARAM NAME="_ExtentX" VALUE="13414">

<PARAM NAME="_ExtentY" VALUE="11642">

<PARAM NAME="GetInfo" VALUE="<%=sValue%>">

</OBJECT>

</BODY>

</HTML>

OK,運行即可



我們看看第二種情況

運行時得到資料


<HTML>

<HEAD>

<TITLE>龍捲風測試頁</TITLE>



<%

dim sValue

sValue="這是ocx得到的用戶端讀卡機的資訊"

%>

<SCRIPT ID=clientEventHandlersJS LANGUAGE=javascript>

<!--



function button1_onclick()

{

GetClient.GetInfo='<%=sValue%>';

}



//-->

</SCRIPT>

</HEAD>

<BODY>

<OBJECT ID="GetClient" WIDTH=507 HEIGHT=440

CLASSID="CLSID:56DFCA88-F5B8-4879-853B-97FE504423FD"

CODEBASE="http://localhost/xml/fOcx.ocx">

<PARAM NAME="_ExtentX" VALUE="13414">

<PARAM NAME="_ExtentY" VALUE="11642">

</OBJECT>

<INPUT id=button1 type=button value=Button name=button1 LANGUAGE=javascript onclick="return butt



相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。