濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > 實(shí)例學(xué)習(xí)如何在ASP中調(diào)用DLL

實(shí)例學(xué)習(xí)如何在ASP中調(diào)用DLL

熱門標(biāo)簽:沈陽(yáng)電話機(jī)器人公司 鄭州智能外呼電銷機(jī)器人廠家 鄢陵學(xué)校如何做地圖標(biāo)注 廣東語(yǔ)音外呼系統(tǒng)公司 長(zhǎng)春公司外呼系統(tǒng)中心 虛擬電話外呼系統(tǒng) 成都ai外呼系統(tǒng)線路 沈陽(yáng)三五防封電銷卡 云南便宜外呼系統(tǒng)平臺(tái)
本文通過(guò)VB5.0創(chuàng)建ActiveX DLL文件,這個(gè)文件模擬了一個(gè)擲色子的過(guò)程,向大家介紹如何在ASP中調(diào)用DLL的文章專題。


動(dòng)態(tài)聯(lián)接庫(kù)(DLL)是加快應(yīng)用程序關(guān)鍵部分的執(zhí)行速度的重要方法,但有一點(diǎn)恐怕大部分人都不知道,那就是在ASP文件也能通過(guò)調(diào)用DLL來(lái)加快服務(wù)器的執(zhí)行速度,下面我簡(jiǎn)單的介紹一下在ASP文件調(diào)用DLL的步驟。 
  首先,必須得有DLL文件,本例是通過(guò)VB5.0創(chuàng)建ActiveX DLL文件,這個(gè)文件模擬了一個(gè)擲色子的過(guò)程。 
在VB5.0的環(huán)境下,新建一個(gè)工程,并雙擊新建工程窗口中ActiveX DLL圖標(biāo),VB將自動(dòng)為項(xiàng)目添加一個(gè)類模塊,并將該項(xiàng)目類型設(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 

  這個(gè)類模塊定義了clsDice對(duì)象的兩個(gè)屬性和一個(gè)方法,這些屬性和方法模擬了擲色子的過(guò)程。其中Maxpoint屬性表示色子的面數(shù),加入Property Let語(yǔ)句將使客戶能修改色子的面數(shù);Result屬性表示最后擲出色子的點(diǎn)數(shù);Throw方法代表擲色子的動(dòng)作;Private Sub Class_Initialize語(yǔ)句將色子的面數(shù)缺省的設(shè)置為6面。 

  從文件菜單中,選擇生成MYDLL.DLL并將它保存到適當(dāng)?shù)牡胤?。至此,我們就?chuàng)建了一個(gè)自己的DLL文件。 

  第二步要做的就是要在ASP文件中引用類clsDice。 

  ASP(活動(dòng)服務(wù)器頁(yè)面Active Server Pages)的所有代碼都是在服務(wù)器上運(yùn)行的,客戶只能查看以HTML形式傳回的結(jié)果。它使用“%”和“%>”標(biāo)記來(lái)標(biāo)識(shí)腳本代碼,并不傳回客戶端,在代碼外部,使用HTML標(biāo)記來(lái)標(biāo)識(shí)內(nèi)容。在下面Dice.asp的代碼中使用了CreateObject函數(shù)創(chuàng)建了一個(gè)clsDice對(duì)象實(shí)例,該對(duì)象來(lái)自于上面創(chuàng)建的ActiveX.DLL--MYDLL.DLL文件,下面的例子使用了VBScript腳本語(yǔ)言。 


!--METADATA TYPE="typelib" FILE="Path/mydll.dll" --> 
'裝載 METADATA 標(biāo)簽中指定的類型庫(kù)。 Path是mydll.dll在機(jī)器上存放的路徑 
html> 
head>title>在ASP文件使用DLL/title>/head> 
body> 

On Error Resume Next ‘當(dāng)程序出現(xiàn)意外錯(cuò)誤時(shí)能繼續(xù)執(zhí)行 

If Request.Form("T1")="" then 
Session("point") = 6 
Else 
Session("point")=Request.Form("T1") 
End If 
'用Session("point")來(lái)存放色子的面數(shù) 

Set dice1=Server.Createobject("MyDLL.clsDice") 
'使用set語(yǔ)句創(chuàng)建dice1對(duì)象,其中MyDLL是上面創(chuàng)建dll文件時(shí)的工程名稱(注意:不是文件的名稱),clsDice為類模塊的名稱。至此我們就可以用Maxpoint,Result和Throw屬性(方法)來(lái)對(duì)dice1對(duì)象進(jìn)行操作。 

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") %>>時(shí)/p> 
p>input type="submit" value="擲色子" name="B1">/p> 
/form> 
p>結(jié)果為:% = dice1.Result %>點(diǎn) /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") %>>時(shí)/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上編譯運(yùn)行通過(guò),但還有不少的缺陷,但我的本意是向大家介紹如何在ASP中調(diào)用DLL,所以我沒(méi)有去完善它。如果哪位高手有更好的方法或者不同的見(jiàn)解,請(qǐng)千萬(wàn)mail我,我的信箱:jimi_chen@yeah.net

標(biāo)簽:平頂山 四平 防城港 朝陽(yáng) 孝感 馬鞍山 遼陽(yáng) 湖北

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《實(shí)例學(xué)習(xí)如何在ASP中調(diào)用DLL》,本文關(guān)鍵詞  實(shí)例,學(xué)習(xí),如,何在,ASP,中,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《實(shí)例學(xué)習(xí)如何在ASP中調(diào)用DLL》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于實(shí)例學(xué)習(xí)如何在ASP中調(diào)用DLL的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    万山特区| 阿图什市| 镇安县| 贵港市| 南漳县| 万山特区| 六盘水市| 蒙山县| 金沙县| 林州市| 五河县| 北京市| 米泉市| 新兴县| 永济市| 高邑县| 嘉兴市| 金堂县| 措美县| 嘉义市| 吕梁市| 隆尧县| 昆山市| 建平县| 昌都县| 铜梁县| 三原县| 开阳县| 中卫市| 阿坝县| 田东县| 高淳县| 海晏县| 谢通门县| 伊春市| 临洮县| 万盛区| 肥城市| 探索| 阜阳市| 南雄市|