婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > asp下調試程序的debug類

asp下調試程序的debug類

熱門標簽:常用地圖標注范圍點 為什么外呼系統需要預存話費呢 離線電子地圖標注軟件注冊 咸陽銷售外呼系統 寧夏怎么申請400電話 辦理400電話一年多少錢 蘭州智能語音電銷機器人功能 外呼回撥系統圖片 企數外呼系統能用多久
ASP中最頭疼的就是調試程序的時候不方便,我想可能很多朋友都會用這樣的方法“response.write ”,然后輸出相關的語句來看看是否正確。前幾天寫了一個千行的頁面,里面大概有七八個SUB/FUNCTION,調試的時候用了有三十幾個 response.write ,天,調試完后把這三十個一個個刪除,累!

今天看到一個ASP中的Debug類(VBS),試用了一下,絕!

使用方法很簡單:

test.asp

!--#INCLUDE FILE="debuggingConsole.asp"-->
%
output="XXXX"
Set debugstr = New debuggingConsole
debugstr.Enabled = true
debugstr.Print "參數output的值", output
''……
debugstr.draw
Set debugstr = Nothing
%>

===================================================

debuggingConsole.asp

%
Class debuggingConsole

private dbg_Enabled
private dbg_Show
private dbg_RequestTime
private dbg_FinishTime
private dbg_Data
private dbg_DB_Data
private dbg_AllVars
private dbg_Show_default
private DivSets(2)

''Construktor => set the default values
Private Sub Class_Initialize()
dbg_RequestTime = Now()
dbg_AllVars = false
Set dbg_Data = Server.CreateObject("Scripting.Dictionary")
DivSets(0) = "TR>TD style=''cursor:hand;'' onclick=""javascript:if (document.getElementById(''data#sectname#'').style.display==''none''){document.getElementById(''data#sectname#'').style.display=''block'';}else{document.getElementById(''data#sectname#'').style.display=''none'';}"">DIV id=sect#sectname# style=""font-weight:bold;cursor:hand;background:#7EA5D7;color:white;padding-left:4;padding-right:4;padding-bottom:2;"">|#title#| DIV id=data#sectname# style=""cursor:text;display:none;background:#FFFFFF;padding-left:8;"" onclick=""window.event.cancelBubble = true;"">|#data#| /DIV>|/DIV>|"
DivSets(1) = "TR>TD>DIV id=sect#sectname# style=""font-weight:bold;cursor:hand;background:#7EA5D7;color:white;padding-left:4;padding-right:4;padding-bottom:2;"" onclick=""javascript:if (document.getElementById(''data#sectname#'').style.display==''none''){document.getElementById(''data#sectname#'').style.display=''block'';}else{document.getElementById(''data#sectname#'').style.display=''none'';}"">|#title#| DIV id=data#sectname# style=""cursor:text;display:block;background:#FFFFFF;padding-left:8;"" onclick=""window.event.cancelBubble = true;"">|#data#| /DIV>|/DIV>|"
DivSets(2) = "TR>TD>DIV id=sect#sectname# style=""background:#7EA5D7;color:lightsteelblue;padding-left:4;padding-right:4;padding-bottom:2;"">|#title#| DIV id=data#sectname# style=""display:none;background:lightsteelblue;padding-left:8"">|#data#| /DIV>|/DIV>|"
dbg_Show_default = "0,0,0,0,0,0,0,0,0,0,0"
End Sub

Public Property Let Enabled(bNewValue) ''''[bool] Sets "enabled" to true or false
dbg_Enabled = bNewValue
End Property
Public Property Get Enabled ''''[bool] Gets the "enabled" value
Enabled = dbg_Enabled
End Property

Public Property Let Show(bNewValue) ''''[string] Sets the debugging panel. Where each digit in the string represents a debug information pane in order (11 of them). 1=open, 0=closed
dbg_Show = bNewValue
End Property
Public Property Get Show ''''[string] Gets the debugging panel.
Show = dbg_Show
End Property

Public Property Let AllVars(bNewValue) ''''[bool] Sets wheather all variables will be displayed or not. true/false
dbg_AllVars = bNewValue
End Property
Public Property Get AllVars ''''[bool] Gets if all variables will be displayed.
AllVars = dbg_AllVars
End Property

''******************************************************************************************************************
''''@SDESCRIPTION: Adds a variable to the debug-informations.
''''@PARAM: - label [string]: Description of the variable
''''@PARAM: - output [variable]: The variable itself
''******************************************************************************************************************
Public Sub Print(label, output)
If dbg_Enabled Then
if err.number > 0 then
call dbg_Data.Add(ValidLabel(label), "!!! Error: "  err.number  " "  err.Description)
err.Clear
else
uniqueID = ValidLabel(label)
response.write uniqueID
call dbg_Data.Add(uniqueID, output)
end if
End If
End Sub

''******************************************************************************************************************
''* ValidLabel
''******************************************************************************************************************
Private Function ValidLabel(byval label)
dim i, lbl
i = 0
lbl = label
do
if not dbg_Data.Exists(lbl) then exit do
i = i + 1
lbl = label  "("  i  ")"
loop until i = i

ValidLabel = lbl
End Function

''******************************************************************************************************************
''* PrintCookiesInfo
''******************************************************************************************************************
Private Sub PrintCookiesInfo(byval DivSetNo)
dim tbl, cookie, key, tmp
For Each cookie in Request.Cookies
If Not Request.Cookies(cookie).HasKeys Then
tbl = AddRow(tbl, cookie, Request.Cookies(cookie)) 
Else
For Each key in Request.Cookies(cookie)
tbl = AddRow(tbl, cookie  "("  key  ")", Request.Cookies(cookie)(key)) 
Next
End If
Next

tbl = MakeTable(tbl)
if Request.Cookies.count = 0 then DivSetNo = 2
tmp = replace(replace(replace(DivSets(DivSetNo),"#sectname#","COOKIES"),"#title#","COOKIES"),"#data#",tbl)
Response.Write replace(tmp,"|", vbcrlf)
end sub

''******************************************************************************************************************
''* PrintSuMMaryInfo
''******************************************************************************************************************
Private Sub PrintSummaryInfo(byval DivSetNo)
dim tmp, tbl
tbl = AddRow(tbl, "Time of Request",dbg_RequestTime)
tbl = AddRow(tbl, "Elapsed Time",DateDiff("s", dbg_RequestTime, dbg_FinishTime)  " seconds")
tbl = AddRow(tbl, "Request Type",Request.ServerVariables("REQUEST_METHOD"))
tbl = AddRow(tbl, "Status Code",Response.Status)
tbl = AddRow(tbl, "Script Engine",ScriptEngine  " "  ScriptEngineMajorVersion  "."  ScriptEngineMinorVersion  "."  ScriptEngineBuildVersion)
tbl = MakeTable(tbl)
tmp = replace(replace(replace(DivSets(DivSetNo),"#sectname#","SUMMARY"),"#title#","SUMMARY INFO"),"#data#",tbl)
Response.Write replace(tmp,"|", vbcrlf)
End Sub

''******************************************************************************************************************
''''@SDESCRIPTION: Adds the Database-connection object to the debug-instance. To display Database-information
''''@PARAM: - oSQLDB [object]: connection-object
''******************************************************************************************************************
Public Sub GrabDatabaseInfo(byval oSQLDB)
dbg_DB_Data = AddRow(dbg_DB_Data, "ADO Ver",oSQLDB.Version)
dbg_DB_Data = AddRow(dbg_DB_Data, "OLEDB Ver",oSQLDB.Properties("OLE DB Version"))
dbg_DB_Data = AddRow(dbg_DB_Data, "DBMS",oSQLDB.Properties("DBMS Name")  " Ver: "  oSQLDB.Properties("DBMS Version"))
dbg_DB_Data = AddRow(dbg_DB_Data, "Provider",oSQLDB.Properties("Provider Name")  " Ver: "  oSQLDB.Properties("Provider Version"))
End Sub

''******************************************************************************************************************
''* PrintDatabaseInfo
''******************************************************************************************************************
Private Sub PrintDatabaseInfo(byval DivSetNo)
dim tbl
tbl = MakeTable(dbg_DB_Data)
tbl = replace(replace(replace(DivSets(DivSetNo),"#sectname#","DATABASE"),"#title#","DATABASE INFO"),"#data#",tbl)
Response.Write replace(tbl,"|", vbcrlf)
End Sub

''******************************************************************************************************************
''* PrintCollection
''******************************************************************************************************************
Private Sub PrintCollection(Byval Name, ByVal Collection, ByVal DivSetNo, ByVal ExtraInfo)
Dim vItem, tbl, Temp
For Each vItem In Collection
if isobject(Collection(vItem)) and Name > "SERVER VARIABLES" and Name > "QUERYSTRING" and Name > "FORM" then
tbl = AddRow(tbl, vItem, "{object}")
elseif isnull(Collection(vItem)) then
tbl = AddRow(tbl, vItem, "{null}")
elseif isarray(Collection(vItem)) then
tbl = AddRow(tbl, vItem, "{array}")
else
if dbg_AllVars then
tbl = AddRow(tbl, "nobr>"  vItem  "/nobr>", server.HTMLEncode(Collection(vItem)))
elseif (Name = "SERVER VARIABLES" and vItem > "ALL_HTTP" and vItem > "ALL_RAW") or Name > "SERVER VARIABLES" then
if Collection(vItem) > "" then
tbl = AddRow(tbl, vItem, server.HTMLEncode(Collection(vItem))) ''  " {"  TypeName(Collection(vItem))  "}")
else
tbl = AddRow(tbl, vItem, "...")
end if
end if
end if
Next
if ExtraInfo > "" then tbl = tbl  "TR>TD COLSPAN=2>HR>/TR>"  ExtraInfo
tbl = MakeTable(tbl)
if Collection.count = 0 then DivSetNo =2
tbl = replace(replace(DivSets(DivSetNo),"#title#",Name),"#data#",tbl)
tbl = replace(tbl,"#sectname#",replace(Name," ",""))
Response.Write replace(tbl,"|", vbcrlf)
End Sub

''******************************************************************************************************************
''* AddRow
''******************************************************************************************************************
Private Function AddRow(byval t, byval var, byval val)
t = t  "|TR valign=top>|TD>|"  var  "|TD>= "  val  "|/TR>"
AddRow = t
End Function

''******************************************************************************************************************
''* MakeTable
''******************************************************************************************************************
Private Function MakeTable(byval tdata)
tdata = "|table border=0 style=""font-size:10pt;font-weight:normal;"">" + tdata + "/Table>|"
MakeTable = tdata
End Function

''******************************************************************************************************************
''''@SDESCRIPTION: Draws the Debug-panel
''******************************************************************************************************************
Public Sub draw()
If dbg_Enabled Then
dbg_FinishTime = Now()

Dim DivSet, x
DivSet = split(dbg_Show_default,",")
dbg_Show = split(dbg_Show,",")

For x = 0 to ubound(dbg_Show)
divSet(x) = dbg_Show(x)
Next

Response.Write "BR>Table width=100% cellspacing=0 border=0 style=""font-family:arial;font-size:9pt;font-weight:normal;"">TR>TD>DIV style=""background:#005A9E;color:white;padding:4;font-size:12pt;font-weight:bold;"">Debugging-console:/DIV>"
Call PrintSummaryInfo(divSet(0))
Call PrintCollection("VARIABLES", dbg_Data,divSet(1),"")
Call PrintCollection("QUERYSTRING", Request.QueryString(), divSet(2),"")
Call PrintCollection("FORM", Request.Form(),divSet(3),"")
Call PrintCookiesInfo(divSet(4))
Call PrintCollection("SESSION", Session.Contents(),divSet(5),AddRow(AddRow(AddRow("","Locale ID",Session.LCID  " (H"  Hex(Session.LCID)  ")"),"Code Page",Session.CodePage),"Session ID",Session.SessionID))
Call PrintCollection("APPLICATION", Application.Contents(),divSet(6),"")
Call PrintCollection("SERVER VARIABLES", Request.ServerVariables(),divSet(7),AddRow("","Timeout",Server.ScriptTimeout))
Call PrintDatabaseInfo(divSet(8))
Call PrintCollection("SESSION STATIC OBJECTS", Session.StaticObjects(),divSet(9),"")
Call PrintCollection("APPLICATION STATIC OBJECTS", Application.StaticObjects(),divSet(10),"")
Response.Write "/Table>"
End If
End Sub

''Destructor
Private Sub Class_Terminate()
Set dbg_Data = Nothing
End Sub

End Class

%>

類的說明:
CLASS debuggingConsole
Version: 1.2



Public Properties
Property Let Enabled(bNewValue) [bool] Sets "enabled" to true or false
Property Get Enabled [bool] Gets the "enabled" value
Property Let Show(bNewValue) [string] Sets the debugging panel. Where each digit in the string represents a debug information pane in order (11 of them). 1=open, 0=closed
Property Get Show [string] Gets the debugging panel.
Property Let AllVars(bNewValue) [bool] Sets wheather all variables will be displayed or not. true/false
Property Get AllVars [bool] Gets if all variables will be displayed.

Public Methods
public sub Print (label, output)
Adds a variable to the debug-informations.
public sub GrabDatabaseInfo (byval oSQLDB)
Adds the Database-connection object to the debug-instance. To display Database-information
public sub draw ()
Draws the Debug-panel

Methods Detail

public sub Print (label, output)
Parameters: - label [string]: Description of the variable
- output [variable]: The variable itself

public sub GrabDatabaseInfo (byval oSQLDB)
Parameters: - oSQLDB [object]: connection-object
您可能感興趣的文章:
  • Java關于遠程調試程序教程(以Eclipse為例)
  • C#中利用斷點操作調試程序的步驟詳解
  • IOS 使用NSAssert()和NSParameterAssert調試程序
  • Python中使用PDB庫調試程序
  • ubuntu用wifi連接android調試程序的步驟
  • Android開發筆記之:一分鐘學會使用Logcat調試程序的詳解
  • 用bat實現刪除系統腳本調試程序
  • asp:debug類調試程序
  • Linux應用程序使用寫文件調試程序的方法

標簽:泰州 咸陽 麗江 鐵嶺 昆明 家電維修 溫州 昌都

巨人網絡通訊聲明:本文標題《asp下調試程序的debug類》,本文關鍵詞  asp,下,調試,程序,的,debug,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《asp下調試程序的debug類》相關的同類信息!
  • 本頁收集關于asp下調試程序的debug類的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    蜜桃视频一区二区| 国产精品久久久久天堂| 欧美精品在欧美一区二区少妇| 国产日韩欧美亚洲| 九色综合狠狠综合久久| 日韩精品最新网址| 久久99热狠狠色一区二区| 精品卡一卡二卡三卡四在线| 欧美午夜影院一区| 艳妇臀荡乳欲伦亚洲一区| 色悠悠亚洲一区二区| 悠悠色在线精品| 欧美三级资源在线| 日本v片在线高清不卡在线观看| 欧美久久免费观看| 极品少妇xxxx精品少妇偷拍| 欧美电视剧免费全集观看| 三级一区在线视频先锋 | 免费不卡在线观看| 欧美一区二区女人| 韩国精品久久久| 国产精品五月天| 色婷婷精品久久二区二区蜜臂av| 国产精品视频线看| 成人aaaa免费全部观看| 亚洲少妇最新在线视频| 欧美日韩一区二区电影| 国产福利91精品| 依依成人精品视频| 欧美成人vps| 色网站国产精品| 韩国三级中文字幕hd久久精品| 久久久亚洲精品石原莉奈 | 欧美大片免费久久精品三p| 国产成人精品免费网站| 亚洲一区二区三区自拍| 久久尤物电影视频在线观看| 色综合婷婷久久| 麻豆国产精品官网| 亚洲一区国产视频| 久久久久99精品一区| 欧美乱妇15p| av一区二区不卡| 激情综合网最新| 天堂精品中文字幕在线| 国产精品久久久久久户外露出 | 色综合久久久久网| 韩国av一区二区三区四区 | 加勒比av一区二区| 五月天激情综合| 国产精品水嫩水嫩| 国产亚洲一区二区三区| 911精品国产一区二区在线| 99国内精品久久| 不卡视频免费播放| 国产成人无遮挡在线视频| 麻豆高清免费国产一区| 日韩中文字幕麻豆| 婷婷丁香激情综合| 亚洲制服丝袜av| 国产精品视频一二三| 日韩亚洲欧美综合| 欧美日免费三级在线| 欧美在线色视频| 91麻豆国产福利精品| 99精品久久只有精品| 99久久国产免费看| 97精品视频在线观看自产线路二| 成人动漫精品一区二区| 国产风韵犹存在线视精品| 成人免费毛片片v| bt欧美亚洲午夜电影天堂| 成人精品免费看| 成人综合在线网站| 一本久道中文字幕精品亚洲嫩| 99久久精品99国产精品| 色综合视频一区二区三区高清| 一本一本大道香蕉久在线精品 | 17c精品麻豆一区二区免费| 国产蜜臀av在线一区二区三区| 国产视频911| 专区另类欧美日韩| 亚洲国产精品久久久男人的天堂 | 国产精品女人毛片| 亚洲人成精品久久久久| 天天综合色天天综合色h| 久久99最新地址| proumb性欧美在线观看| 欧美日韩国产一级片| 日韩一二三区视频| 久久网站热最新地址| 国产精品大尺度| 亚洲va欧美va国产va天堂影院| 久久精品国产亚洲5555| 国产成人亚洲综合a∨婷婷| 91丨九色丨尤物| 日韩精品一区在线| 亚洲免费观看高清在线观看| 美女尤物国产一区| 成人黄页在线观看| 欧美日韩视频第一区| 国产午夜亚洲精品理论片色戒| 亚洲欧美日韩国产综合在线 | 奇米综合一区二区三区精品视频| 九九九久久久精品| 色悠悠久久综合| 日韩视频免费直播| 亚洲一区中文日韩| 成人中文字幕电影| 日韩精品自拍偷拍| 午夜久久久久久久久| 成人福利视频网站| 久久夜色精品国产欧美乱极品| 亚洲一二三四久久| 国产激情一区二区三区桃花岛亚洲| 色婷婷av一区二区三区gif| 日韩精品一区二区三区中文精品 | 另类小说综合欧美亚洲| 97精品视频在线观看自产线路二| 精品人在线二区三区| 亚洲国产精品久久一线不卡| av一区二区不卡| 国产精品乱码一区二区三区软件| 日韩在线一区二区三区| 欧美性色综合网| 亚洲乱码一区二区三区在线观看| 懂色av中文一区二区三区| 2023国产精品| 久久99国产精品久久| 欧美精品久久一区| 午夜精品福利一区二区三区蜜桃| 色狠狠桃花综合| 亚洲天堂av一区| 99精品久久久久久| 亚洲视频每日更新| 色综合久久88色综合天天免费| 亚洲日本护士毛茸茸| 色婷婷综合久久久中文一区二区| 国产精品网站在线| 成人av资源在线观看| 中文字幕一区二区三区在线不卡| av网站免费线看精品| 国产精品久久久久婷婷| 91麻豆国产在线观看| 亚洲小说欧美激情另类| 91.com在线观看| 男人的j进女人的j一区| 精品av综合导航| 成人性生交大片免费看中文 | 国产精品高潮呻吟| a级高清视频欧美日韩| 亚洲人成网站色在线观看| 欧美性三三影院| 另类成人小视频在线| 国产亚洲自拍一区| 色综合激情五月| 欧美96一区二区免费视频| 久久亚洲一级片| 99在线精品视频| 亚洲妇女屁股眼交7| 日韩欧美久久一区| 国产一区二区三区观看| 欧美xxx久久| 国产成人av一区二区三区在线观看| ...av二区三区久久精品| 色狠狠av一区二区三区| 激情六月婷婷综合| 国产欧美视频一区二区| 色综合久久综合中文综合网| 亚洲国产cao| 日韩三级免费观看| 国产成人一区二区精品非洲| 亚洲最大成人网4388xx| 精品视频一区 二区 三区| 精品在线播放免费| 亚洲毛片av在线| 精品国内二区三区| 欧美亚洲精品一区| 国产成人av影院| 美女视频黄频大全不卡视频在线播放| 国产精品丝袜一区| 久久综合久久鬼色中文字| 欧美影院一区二区三区| 国产九色sp调教91| 免费高清视频精品| 亚洲国产一区视频| 国产精品二三区| 欧美激情自拍偷拍| 欧美一区二区三区四区高清 | 欧美高清hd18日本| 99re成人精品视频| 国产美女精品人人做人人爽| 天天色天天爱天天射综合| 亚洲丝袜精品丝袜在线| 久久婷婷色综合| 精品国产伦一区二区三区观看方式 | 91精品欧美久久久久久动漫| 成人精品小蝌蚪| 国内精品在线播放| 午夜精品久久久久|