动手编写小部件
接下来,我们将编写一个非常简单的组件。关键是要知道如何开发DLL组件,而不是复杂的代码。所有这些都取决于你自己的努力。
服务器端组件
首先,服务器端组件具有与客户机不同的组件。客户端组件通过网络传输,依靠HTML来工作。只在IE.有用,组件服务器在服务器上运行,它在服务器上执行各种操作。因此,所有浏览器都可以享受它。依靠服务器而不是浏览器。
当请求IIS执行一个ASP程序时,它会首先找到ASP文件中的代码之间的标签,然后执行它(也可以是代码)。如果以前调用ASP程序,它将在内存中编译返回用户HTML代码的过程。如果不是,那么它是编译。这里ASP比CGI速度优势多一点,因为CGI是每个使用线程的请求。它可以消耗服务器资源。
您想在IIS中运行自己的程序吗现在你可以做了!(当然,现在用VB5 VB6),您可以创建动态链接库(DLL文件),可直接运行在IIS(如果有ASP文件的请求)。
系统和软件要求
你需要一个32位的操作系统来运行ASP。当然,你必须安装IIS或PWS ..我们下一步的计划是在WINDOWS95 + PWS + VB5开发环境。
让我们开始。
启动VB,选择ActiveX图标。这个图标可以在新项目中找到!VB将提供一个默认项目名称(项目)和类的名称(一级)。我们得去掉这两个名字。在重命名之前,确保我们有微软Active Server页面对象库,它在我们的程序中非常有用。从菜单中选择项目,然后选择引用
命名工程与类
现在让我们根据自己的爱好和一班的名字中。命名它们也是非常重要的。稍后我们将使用这个工程名称和类名来创建这个组件的示例。
我不想再多说怎么改名了!
我们的工程名称更改为例,和类的名字是Helloword
如何使用工程和类
现在我们有我们自己的项目(例)和类的名字(HelloWorld)。我们将通过使用它们的名称来引用ASP代码中的这个组件。在ASP,我们将引述如下:
集objreference = server.createobject(项目。类名)
对我们项目的参考是:
集objreference = server.createobject(example1. HelloWorld)
现在我们可以使用objreference调用该函数,我们在组件创建子程序。下一步我们将编写一个子程序的打招呼。我们执行以下代码。
在helloword类使用ASP的方法,你必须在这类写OnStartPage
子功能。
市民Sub OnStartPage(passedscriptingcontext作为scriptingcontext)
集myscriptingcontext = passedscriptingcontext
端子
现在,无论什么时间与用户访问ASP文件的一个组成部分,其scriptingcontext IIS将发送给我们,请。我们用scriptingcontext对象包括ASP的方法和属性。该实现使我们能够访问所有ASP对象。请看下面的代码:
市民Sub OnStartPage(passedscriptingcontext作为scriptingcontext)
集myscriptingcontext = passedscriptingcontext
设置应用myscriptingcontext MyApplication =。
把我的请求,请求myscriptingcontext。
设置= myscriptingcontext响应响应。
个= myscriptingcontext服务器设置。
mysession = myscriptingcontext会话设置。
端子
之后,我们可以使用VB来代替ASP的申请应用,可代替请求,服务器…同样的,但是我们要声明这些变量在OnStartPage。
私人myscriptingcontext作为scriptingcontext
私人申请应用
私人MyRequest As Request
私人MyResponse反应
私人服务器作为服务器
私人mysession会话
对象使用ASP
我们的变量现在可以用作标准的ASP对象。例如,我们经常使用Request.form()在ASP收集的数据提交表单。现在我们在VB中实现这个函数。
ASP实施:
在vb中的实现:
mytempvariable =我的请求。形式(用户名)
响应。写(输入mytempvariable 用户名)
利用响应不响应,我们可以使用所有的反应的方法。当然,名字取的响应可以在任何时间,你甚至可以采取的回应。
另一件事我们应该注意的是,我们在课堂上写OnEndPage子函数建立。这个OnStartPage是相反的。OnStartPage是创作对象,和OnEndPage是对象的破坏。
市民Sub OnEndPage()
集myscriptingcontext =没有
设置申请=没有
把我的请求=没有
设置响应=没有
设置服务器=没有
集mysession =没有
端子
sayHello方法
让我们建立一个子函数显示你好世界。这跟方法在HelloWorld类只有一个子函数。稍后我们将在ASP使用以下显示方法。
打招呼的程序,非常简单!
市民Sub SayHello()
响应。写(Hello World)
端子
现在是完成一个小的组件,剩下的工作就是编写这个组件,它保存在项目菜单中,我们能用什么exmaple1.vbp!然后在菜单中选择使exmaple1 dll。
注意,编译这个组件,那么你必须关掉你的PWS第一,然后重新编译的组件。否则,VB会告诉您一些组件正在使用中。
在ASP使用我们自己的组件。
当你正确的编译错误,编译成功的海上项目,现在你必须拿出你最喜欢的HTML编辑器编写以下语句,并保存为ASP文件。
运行后,您可以看到结果:
你好世界
注册组件
如果您希望您的朋友和邻居共享您的组件,则必须在系统上注册您的组件。我们使用regsvr32.exe登记组件。你的组件注册后会出现在Win95或Win98 Windows系统目录。下面是一个注册的例子:
regsvr32.exe C: / / / example1.dll wwwroot 1
在你的系统,VB将自动登记你的,所以你很少使用regsvr32.exe
我们只是在这里写了一个很小的组件,你可以编写你自己的更大的组件,你也可以在VB中使用很多控件。
让我们使用组件来扩展我们程序的功能,并希望看到我们中国人的很多组件。