动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
   Asp → 阅读文章

 加亮显示ASP文章原代码

作者来源: 
阅读 3473 人次 , 2000-7-1 

<%@ LANGUAGE="VBSCRIPT"  %>
<% Option Explicit %>
<%
    'File:        CodeBrws.asp
    'Overview:    This formats and writes the text of the selected page for
    '            the View Script Button  
    'This file is provided as part of the Microsoft Visual Studio 6.0 Samples

    'THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT
    'WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
    'INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES
    'OF MERCHANTABILITY AND/OR FITNESS FOR A  PARTICULAR
    'PURPOSE.

    'Copyright (C) 1997, 1998 Microsoft Corporation, All rights reserved
%>
<html>

<head>
<meta NAME="DESCRIPTION" CONTENT="ASP Source code browser">
<meta NAME="GENERATOR" CONTENT="Microsoft FrontPage 3.0">
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso8859-1">
<title></title>
</head>

<body BGCOLOR="#FFFFFF" TOPMARGIN="0" LEFTMARGIN="0" ALINK="#23238E" VLINK="#808080"
LINK="#FFCC00">
<basefont FACE="VERDANA, ARIAL, HELVETICA" SIZE="2"><!--- DISPLAY THE COLOR LEGEND --->


<table BORDER="1">
  <tr>
    <td WIDTH="25" BGCOLOR="#FF0000">&nbsp;&nbsp; </td>
    <td><font FACE="VERDANA, ARIAL, HELVETICA" SIZE="2">ASP Script</font> </td>
  </tr>
  <tr>
    <td BGCOLOR="#0000FF">&nbsp;&nbsp; </td>
    <td><font FACE="VERDANA, ARIAL, HELVETICA" SIZE="2">Comments</font> </td>
  </tr>
  <tr>
    <td BGCOLOR="#000000">&nbsp;&nbsp; </td>
    <td><font FACE="VERDANA, ARIAL, HELVETICA" SIZE="2">HTML and Text</font> </td>
  </tr>
</table>

<hr>
<font FACE="VERDANA, ARIAL, HELVETICA" SIZE="2"><% OutputSource %>
</font>
</body>
</html>
<%
  Sub OutputSource
    Dim strVirtualPath, strFilename
    strVirtualPath = Request("Source")
    strFilename = Server.MapPath(strVirtualPath)
    
    Dim FileObject, oInStream, strOutput
    'Creates a file object to hold the text of the selected page
    Set FileObject = CreateObject("Scripting.FileSystemObject")
    Set oInStream = FileObject.OpenTextFile(strFilename, 1, 0, 0)
    'Loop that writes each line of text in the file according to
    'the PrintLine function below
    While NOT oInStream.AtEndOfStream
      strOutput = oInStream.ReadLine
      Call PrintLine(strOutput, fCheckLine(strOutput))
      Response.Write "<BR>"
    Wend
  End Sub

  ' Returns the minimum number greater than 0
  ' If both are 0, returns -1
  Function fMin(iNum1, iNum2)
    If iNum1 = 0 AND iNum2 = 0 Then
      fMin = -1
    ElseIf iNum2 = 0 Then
      fMin = iNum1
    ElseIf iNum1 = 0 Then
      fMin = iNum2
    ElseIf iNum1 < iNum2 Then
      fMin = iNum1
    Else
      fMin = iNum2
    End If
  End Function

  Function fCheckLine (ByVal strLine)
  Dim iTemp, iPos
  fCheckLine = 0
  iTemp = 0
  
  iPos = InStr(strLine, "<" & "%")
  If fMin(iTemp, iPos) = iPos Then
    iTemp = iPos
    fCheckLine = 1
  End If
  
  iPos = InStr(strLine, "%" & ">")
  If fMin(iTemp, iPos) = iPos Then
    iTemp = iPos
    fCheckLine = 2
  End If
  
  iPos = InStr(1, strLine, "<" & "SCRIPT", 1)
  If fMin(iTemp, iPos) = iPos Then
    iTemp = iPos
    fCheckLine = 3
  End If
  
  iPos = InStr(1, strLine, "<" & "/SCRIPT", 1)
  If fMin(iTemp, iPos) = iPos Then
    iTemp = iPos
    fCheckLine = 4
  End If
  
  iPos = InStr(1, strLine, "<" & "!--", 1)
  If fMin(iTemp, iPos) = iPos Then
    iTemp = iPos
    fCheckLine = 5
  End If
  
  iPos = InStr(1, strLine, "-" & "->", 1)
  If fMin(iTemp, iPos) = iPos Then
    iTemp = iPos
    fCheckLine = 6
  End If
  
  End Function

  Sub PrintHTML (ByVal strLine)
    Dim iPos, iSpaces, i
    iSpaces = Len(strLine) - Len(LTrim(strLine))
    i = 1
    'Correct for tabs
    While Mid(Strline, i, 1) = Chr(9)
      iSpaces = iSpaces + 5
      i = i + 1
    Wend
    'Insert spaces
    If iSpaces > 0 Then
      For i = 1 to iSpaces
        Response.Write("&nbsp;")
      Next
    End If
    iPos = InStr(strLine, "<")
    If iPos Then
      Response.Write(Left(strLine, iPos - 1))
      Response.Write("&lt;")
      strLine = Right(strLine, Len(strLine) - iPos)
      Call PrintHTML(strLine)
    Else
      Response.Write(strLine)
    End If
  End Sub

  Sub PrintLine (ByVal strLine, iFlag)
    Dim iPos
    Select Case iFlag
      Case 0
        Call PrintHTML(strLine)
      
      Case 1
        iPos = InStr(strLine, "<" & "%")
        Call PrintHTML(Left(strLine, iPos - 1))
        Response.Write("<FONT COLOR=#ff0000>")
        Response.Write("&lt;%")
        strLine = Right(strLine, Len(strLine) - (iPos + 1))
        Call PrintLine(strLine, fCheckLine(strLine))
      
      Case 2
        iPos = InStr(strLine, "%" & ">")
        Call PrintHTML(Left(strLine, iPos -1))
        Response.Write("%&gt;")
        Response.Write("</FONT>")
        strLine = Right(strLine, Len(strLine) - (iPos + 1))
        Call PrintLine(strLine, fCheckLine(strLine))
      
      Case 3
        iPos = InStr(1, strLine, "<" & "SCRIPT", 1)
        Call PrintHTML(Left(strLine, iPos - 1))
        Response.Write("<FONT COLOR=#0000ff>")
        Response.Write("&lt;SCRIPT")
        strLine = Right(strLine, Len(strLine) - (iPos + 6))
        Call PrintLine(strLine, fCheckLine(strLine))
      
      Case 4
        iPos = InStr(1, strLine, "<" & "/SCRIPT>", 1)
        Call PrintHTML(Left(strLine, iPos - 1))
        Response.Write("&lt;/SCRIPT&gt;")
        Response.Write("</FONT>")
        strLine = Right(strLine, Len(strLine) - (iPos + 8))
        Call PrintLine(strLine, fCheckLine(strLine))
      
      Case 5
        iPos = InStr(1, strLine, "<" & "!--", 1)
        Call PrintHTML(Left(strLine, iPos - 1))
        Response.Write("<FONT COLOR=#0000ff>")
        Response.Write("&lt;!--")
        strLine = Right(strLine, Len(strLine) - (iPos + 3))
        Call PrintLine(strLine, fCheckLine(strLine))
      
      Case 6
        iPos = InStr(1, strLine, "-" & "->", 1)
        Call PrintHTML(Left(strLine, iPos - 1))
        Response.Write("--&gt;")
        Response.Write("</FONT>")
        strLine = Right(strLine, Len(strLine) - (iPos + 2))
        Call PrintLine(strLine, fCheckLine(strLine))
      
      Case Else
        Response.Write("Function Error -- Please contact the administrator.")
    End Select
  End Sub
%>  
 
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:用ASP创建Microsoft Word 文件
· 下一篇:ASP漏洞分析和解决方法(10)
· W3 Jmail 参考说明
· ASP讲座之十一:结束语——给您一些建议
· 用ASP构建音乐服务器
· 用ASP实现免费计数器提供-3
· 如何编程实现修改数据库 login Id 的口令


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077