人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當(dāng)前位置:蘿卜系統(tǒng)下載站 > 技術(shù)開發(fā)教程 > 詳細頁面

在ASP文件中調(diào)用DLL

在ASP文件中調(diào)用DLL

更新時間:2022-08-13 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):


動態(tài)聯(lián)接庫(DLL)是加快應(yīng)用程序關(guān)鍵部分的執(zhí)行速度的重要方法,但有一點恐怕大部分人都不知道,那就是在ASP文件也能通過調(diào)用DLL來加快服務(wù)器的執(zhí)行速度,下面我簡單的介紹一下在ASP文件調(diào)用DLL的步驟。
  首先,必須得有DLL文件,本例是通過VB5.0創(chuàng)建ActiveX DLL文件,這個文件模擬了一個擲色子的過程。
  在VB5.0的環(huán)境下,新建一個工程,并雙擊新建工程窗口中ActiveX DLL圖標(biāo),VB將自動為項目添加一個類模塊,并將該項目類型設(shè)置為ActiveX DLL。在屬性窗口將類模塊的名稱屬性改為clsDice。從工程菜單中,選擇工程屬性,將工程名稱改為MyDLL。從文件菜單中,選擇保存clsDice,將類模塊保存為myDice.cls。添加以下代碼:
  
  Option Explicit
  
  Private Max, Point As Integer
  
  Public Property Get Result() As Integer
  Result = Point
  End Property
  
  Public Property Get Maxpoint() As Integer
  Maxpoint = Max
  End Property
  
  Public Property Let Maxpoint(num As Integer)
  Max = num
  End Property
  
  Public Sub Throw()
  Randomize
  Point = Int(Rnd * Max) + 1
  End Sub
  
  Private Sub Class_Initialize()
  Max = 6
  End Sub
  
  這個類模塊定義了clsDice對象的兩個屬性和一個方法,這些屬性和方法模擬了擲色子的過程。其中Maxpoint屬性表示色子的面數(shù),加入Property Let語句將使客戶能修改色子的面數(shù);Result屬性表示最后擲出色子的點數(shù);Throw方法代表擲色子的動作;Private Sub Class_Initialize語句將色子的面數(shù)缺省的設(shè)置為6面。
  
  從文件菜單中,選擇生成MYDLL.DLL并將它保存到適當(dāng)?shù)牡胤健V链,我們就?chuàng)建了一個自己的DLL文件。
  
  第二步要做的就是要在ASP文件中引用類clsDice。
  
  ASP(活動服務(wù)器頁面Active Server Pages)的所有代碼都是在服務(wù)器上運行的,客戶只能查看以HTML形式傳回的結(jié)果。它使用“<%”和“%>”標(biāo)記來標(biāo)識腳本代碼,并不傳回客戶端,在代碼外部,使用HTML標(biāo)記來標(biāo)識內(nèi)容。在下面Dice.asp的代碼中使用了CreateObject函數(shù)創(chuàng)建了一個clsDice對象實例,該對象來自于上面創(chuàng)建的ActiveX.DLL--MYDLL.DLL文件,下面的例子使用了VBScript腳本語言。
  
  
  <!--METADATA TYPE="typelib" FILE="Path/mydll.dll" -->
  '裝載 METADATA 標(biāo)簽中指定的類型庫。 Path是mydll.dll在機器上存放的路徑
  <html>
  <head><title>在ASP文件使用DLL</title></head>
  <body>
  <%
  On Error Resume Next ‘當(dāng)程序出現(xiàn)意外錯誤時能繼續(xù)執(zhí)行
  
  If Request.Form("T1")="" then
  Session("point") = 6
  Else
  Session("point")=Request.Form("T1")
  End If
  '用Session("point")來存放色子的面數(shù)
  
  Set dice1=Server.Createobject("MyDLL.clsDice")
  '使用set語句創(chuàng)建dice1對象,其中MyDLL是上面創(chuàng)建dll文件時的工程名稱(注意:不是文件的名稱),clsDice為類模塊的名稱。至此我們就可以用Maxpoint,Result和Throw屬性(方法)來對dice1對象進行操作。
  
  If Request.ServerVariables("Request_Method")="POST" then
  dice1.Maxpoint = Session("point") ‘設(shè)定色子的面數(shù)
  dice1.Throw ’擲色子
  %>
  <form method="POST" action="dice.asp">
  <p>當(dāng)色子的面數(shù)為<input type="text" name="T1" size="5" value=<% = session("point") %>>時</p>
  <p><input type="submit" value="擲色子" name="B1"></p>
  </form>
  <p>結(jié)果為:<% = dice1.Result %>點 </p> ‘返回結(jié)果
  <%
  Else
  dice1.Maxpoint = Session("point")
  %>
  <form method="POST" action="dice.asp">
  <p>當(dāng)色子的面數(shù)為<input type="text" name="T1" size="5" value=<% = session("point") %>>時</p>
  <p><input type="submit" value="擲色子" name="B1"></p>
  </form>
  <%
  End If
  %>
  </body>
  在瀏覽器中瀏覽http://localhoat/dice.asp,結(jié)果如附圖。注意:只有在WINDOWS NT+IIS3.0以上或WINDOWS9X+PWB的環(huán)境下才能正確瀏覽。
  
  以上代碼在WINDOWS NT4.0+SP3+IIS4.0+IE5.0+VB5.0上編譯運行通過,但還有不少的缺陷,但我的本意是向大家介紹如何在ASP中調(diào)用DLL,所以我沒有去完善它。如果哪位高手有更好的方法或者不同的見解,請千萬mail我,我的信箱:jimi_chen@yeah.net(出處:Viphot)

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統(tǒng)下載排行

網(wǎng)站地圖xml | 網(wǎng)站地圖html
主站蜘蛛池模板: 西乡县| 南皮县| 邢台市| 抚顺县| 秦安县| 乡宁县| 安达市| 柳河县| 广昌县| 吴川市| 米脂县| 宣汉县| 井冈山市| 北海市| 永嘉县| 皋兰县| 平昌县| 玉环县| 奇台县| 五大连池市| 都兰县| 招远市| 红桥区| 磐安县| 惠东县| 油尖旺区| 沈丘县| 古交市| 新田县| 松桃| 泗洪县| 奉新县| 凤山县| 荣昌县| 麻栗坡县| 八宿县| 宜宾县| 北流市| 永嘉县| 壤塘县| 泰兴市|