詳細講解VB開發IIS應用程序
VB還是比較常用的,于是我研究了一下VB開發IIS應用程序,在這里拿出來和大家分享一下,希望對大家有用。利用VB開發IIS應用程序的方法和步驟。使用這種開發方法不但大大簡化了IIS應用程序的開發過程,而且使我們的Web站點具有更強的功能和更大的靈活性。
一、概述
大家知道,IIS(Internet Information Server)應用程序是VB應用程序,它在動態的、基于瀏覽器的應用程序中使用HTML和已編譯的VB代碼。IIS應用程序駐留在Web服務器上,接受來自瀏覽器的請求,運行與請求相關聯的代碼并返回響應到瀏覽器。IIS應用程序可以使用VB代碼來完成以前用腳本、CGI處理和其他方法完成的功能。IIS應用程序可以在任何瀏覽器上運行,因此它很容易得到廣泛的應用。對用戶來說,一個IIS應用程序好象是由一系列的HTML頁面組成。對開發者來說,一個IIS應用程序是由一些被稱為Webclass的特殊類型對象組成。而Webclass包含一系列稱為Webitem的資源。 Webclass作為應用程序的核心,處理來自瀏覽器的數據并向用戶發送信息。Webitem是Webclass為響應一個請求發送給瀏覽器的HTML頁面和其他數據。
二、IIS應用程序的VB開發過程
IIS應用程序的開發過程大體分為五個步驟。我們結合一個公文數據檢索程序來說明。
1、建立IIS應用程序工程
當建立一個IIS應用程序時,應選擇IIS應用程序類型工程。IIS應用程序工程是一個ActiveXDLL工程類型,它自動包括一個ActiveX設計器。這個稱為Webclass的設計器作為創建應用程序的基礎。一個Webclass設計器對應一個Webclass,但它可以包含多個HTML模板和 Webitem。如果想在應用程序中包括多個Webclass,必須在工程中插入另外的設計器。多數情況下,必須編寫代碼告訴Webclass當應用程序***次啟動時做哪些工作,使用Start事件來完成它。當用戶***次訪問你的應用程序時,Start事件發生。使用Start事件代碼漫游到應用程序中的***個Webitem。
例如,我們建立一個名為SearchData的IIS應用程序,編寫Webclass的Start事件代碼如下:
- Private Sub Webclass_Start()
- Set NextItem=SearchTpl
- End sub
2、添加HTML模板到Webclass
添加HTML模板到IIS應用程序,可使Webclass在響應用戶請求時向瀏覽器發送 HTML頁面。當添加一個模板到Webclass時,要選擇一個與它關聯的HTML頁面。一個Webclass可以包含多個模板Webitem,但每個模板Webitem僅能表示一個HTML頁面。你必須為每一個HTML頁面添加相應的模板。在插入一個HTML頁面文件之后,可以使用HTML編輯器對頁面的內容和布局進行更改。例如,我們添加一個名為SearchTpl的模板Webitem,它與SearchCondition頁面關聯,并編寫 Respond事件將此HTML頁面的內容寫到瀏覽器。
- Private Sub SearchTpl_Respond()
- SearchTpl.Write Template
- End Sub
與SearchTpl模板關聯的SearchCondition頁面讓用戶輸入檢索條件。其內容如下:
- <HTML>
- <head>
- <metahttp-equiv="Content-Type" content="text/HTML;charset=gb_2312-80">
- <title>檢索條件</title>
- </head>
- <body bgcolor="#FFFFFF">
- <form action="SearchData_Webclass.asp?WCI=SearchResult" method="POST">
- <p>起始日期<input Type="text" size="10" name="date1"></p>
- <p>終止日期<inputType="text" size="10" name="date2"></p>
- <p>文件字號<inputType="text" size="50" name="code"></p>
- <p>文件標題<inputType="text" size="50" name="title"></p>
- <p><inputType="submit" name="submit" value="確定">
- <inputType="reset" name="clear" value="清除">
- </p>
- </form>
- </body>
- </HTML>
3、添加自定義的Webitem到Webclass
自定義的Webitem允許你通過VB代碼動態地向瀏覽器發送響應。自定義的Webitem通常是一組過程代碼。IIS應用程序中的大多數處理發生在自定義Webitem的事件過程中。IIS應用程序接收 HTML頁面的請求,與Webitem的事件進行匹配,并運行相應的事件過程代碼。例如,我們添加一個名為SearchResult的自定義 Webitem。它使用Request對象在SearchCondition頁面窗體中獲取用戶輸入的查詢條件,然后建立一個連接到ADO公文數據庫,創建記錄集并從中檢索滿足條件的信息。
- Private Sub SearchResult_Respond()
- ′為獲取窗體的信息聲明變量
- Private sDate1 as String
- Private sDate2 as String
- Private sTitle as String
- Private sCode as String
- ′獲取窗體參數并賦給變量
- sDate1=Request.Form("date1")
- sDate2=Request.Form("date2")
- sTitle=Request.Form("title")
- sCode=Request.Form("code")
- ′為數據庫連接和記錄集聲明對象變量
- Dim cn As New ADODB.Connection
- Dim rs As New ADODB.Recordset
- Dim QueryStr As String′
- '形成SQL數據查詢字符串
- QueryStr="select form 公文 where "&"日期>="&"#" & sDate1 &"#"&"and" &"日期<
="&"# "& sDate2 & "#"&" and" &"文件標題like" & "* "&" *"& sTitle & “ * "&"*"&
"and" &"文件字號like"&"*"&" "& sCode&" * "&""- ′建立數據庫連接
- cn.ConnectionString="DSN=doc;UID=sa;
- PWD=sa;DATABASE=document"
- cn.Open
- ′創建記錄集
- Open QueryStr,cn,adOpenStatic,adlockReadonly
- ′將結果信息逐個記錄地寫到一個表格
- With Response
- .Write "<HTML>”
- .Write "<BODY>"
- .Write "<TABLE BORDER CELLSPACING=1 CELLPADDING=7>"
- Do While rs.EOF=False
- .Write "<TR><TD>"
- .Write rs("文件標題")
- .Write "</TD><TD>"
- .Write rs("文件字號")
- .Write "</TD><TD>"
- .Write rs("日期")
- .Write "</TD><TR>"
- .Write rs("責任單位")
- .Write "</TD><TR>"
- .Write rs("主題詞")
- .Write "</TD><TR>"
- rs.MoveNext
- Loop
- .Write"</TABLE>"
- .Write"</BODY>"
- .Write"</HTML>"
- End With′
- '關閉記錄集和數據庫連接
- rs.Close
- cn.Close
- End Sub
4、調試IIS應用程序
調試一個IIS應用程序的方法和調試其他VB應用程序一樣,都是通過進入運行模式來進行的。VB為IIS應用程序創建虛擬目錄,使用瀏覽器打開相應.asp文件啟動Webclass。調試時,可以使用VB的所有工具來調試你的工程。如設置斷點、查看變量、調試語句等。
5、部署IIS應用程序
可以使用VB打包和展開向導來包裝和部署你的IIS應用程序。打包和展開向導將工程的.DLL文件和所有相關的文件包裝到一個“壓縮包”或.cab文件中。然后可以部署這個壓縮包文件和相關文件到一個Web服務器上。
三、小結
利用VB開發IIS應用程序,不但可以使用VB的類模塊和ActiveX部件,而且能夠使用 VB所有的工具來調試IIS應用程序。這種開發方法大大簡化了IIS應用程序的開發過程,使我們更加方便地建立功能強大的Web站點。
【編輯推薦】