ASP与ActiveX控件交互实战 |
|
作者:龙卷风.NET 文章来源:csdn.net 更新时间:2006-4-22 23:05:20 |
【声明:转载此信息在于传递更多信息,其内容表达的观点并不代表本站立场,由这些信息所产生的一切后果本站不负任何责任。如果您对本信息有什么意见,欢迎和本站联系,谢谢!】http://CiDu.Net
关键字:ASP,ActiveX控件,数字签名,安全 问题提出: ActiveX控件得到客户端的信息,如何传递到服务端??? 一种方法就是得到值后,使用Get,Post方式提交,这可能也是最常用的. 有没有更好一些的方法呢? 能不能在控件中直接向服务器发出请求而得到数据呢? 打开vb6,新建ActiveX控件工程。 工程名:fOcx,用户控件名:UC3 添加1个按钮,2个文本框 代码如下: Option Explicit Private Sub Command1_Click() ’注意字符串和数字的写法有些区别 ’使用AsyncRead通过HTTP发送你的请求 UserControl.AsyncRead "http://yang/xml/activex.asp?s1=" & Text1.Text & "", vbAsyncTypeByteArray UserControl.AsyncRead "http://yang/xml/activex.asp?s1=" & Text1.Text, vbAsyncTypeByteArray End Sub ’AsyncReadComplete 事件用来从asp页面接受和分析。 ’当容器刚完成一个异步读取请求时 , 发生该事件? ’AsyncProp 中的数值指定了已完成的某个异步数据读取请求, ’它与前一个 AsyncRead 方法调用中的数据匹配。 ’AsyncReadComplete 事件过程中应包含错误处理代码,因为错误状态会终止下载。 ’如果发生了这种情况,当访问 AsyncProperty 对象的 Value 属性时将会发生错误。 Private Sub UserControl_AsyncReadComplete(AsyncProp As AsyncProperty) On Error GoTo errhandle Text2.Text = ByteArrayToString(AsyncProp.Value) errhandle: Err.Raise 601, "异步读取发生了错误", Err.Description End Sub ’将字节数组转换成字符串 Public Function ByteArrayToString(bytArray() As Byte) As String Dim sAns As String sAns = StrConv(bytArray, vbUnicode) ByteArrayToString = sAns End Function 我们来看看http://yang/xml/activex.asp这个文件 <% dim str str=request("s1") if str="name" then response.write ("龙卷风") elseif str="age" then response.write ("26") else response.write ("没有可用信息返回") end if %> 很简单,使用request接受参数,response返回。 这个例子可以进一步处理,将服务器名以属性的方式传递给控件。 比如:<PARAM NAME="ServerName" VALUE="192.168.0.1 "> 然后在程序中得到,就可以使用了,如: UserControl.AsyncRead "http://192.168.0.1/xml/activex.asp?s1=" & Text1.Text & "", vbAsyncTypeByteArray 然后在程序中得到就可以灵活处理了。上一页 [1] [2] [3]
声明:以上信息资料大都是网上搜集而来,版权归作者,如有版权问题请留言告知我将马上改正。 文中所提到的各种观点只是原文观点,各种说法未经一一确认。并不代表本站认可此观点!!
|
资讯录入:admin 责任编辑:admin |
|
上一篇资讯: Asp组件中级入门与精通系列
下一篇资讯: Asp组件中级入门与精通系列 |
【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |