one.asp 다 중 항목,함수 라 이브 러 리,라 이브 러 리 를 하나의 버 전 으로 통일 하 는 방법
4761 단어 다 항목함수 라 이브 러 리라 이브 러 리
간단 한 응용 장면 을 들 어 XML,JSON 출력 을 지원 하 는 작은 API 시스템 을 개발 합 니 다.기본 버 전(dev/dev.asp)은 Access 만 지원 하고 VIP 버 전(dev/vip.asp)은 Access+SQL Server 만 지원 하 는 것 과 구별 된다.이렇게 하면 VIP 버 전 은 현재 의 기초 위 에서 sqlserver 의 지원 을 추가 하고 추가 설정 항목 을 추가 해 야 한다.개발 과정 은 정상 적 인 개발 만 하면 된다.
개발 이 끝 난 후,one.asp 를 통 해 index.asp 와 vip.asp 두 버 전 으로 포장 되 었 으 며,전체 프로그램 은 하나의 독립 된 파일 입 니 다.
다음 그림 은 분석 과정 을 보 여 줍 니 다:
전체 테스트 코드 접근 가능:oneasp.rar다운로드
핵심 코드 는 다음 과 같 습 니 다.
' ====================================================
' :One
' :mqycn
' :http://www.miaoqiyuan.cn
' :http://www.miaoqiyuan.cn/p/one-php
' : 、
' ====================================================
Class OneAsp
Private FSO
Private Root
Private Sub Class_Initialize()
Set FSO = Server.CreateObject("Scripting.FileSystemObject")
End Sub
Private Sub Class_Terminate()
Set FSO = Nothing
End Sub
Public Function Run(ByVal sourceFile, ByVal saveFile)
Run = "<hr><b>Input:</b>" & sourceFile & "<br><b>Result:</b>" & Save(saveFile, Include(sourceFile))
End Function
Public Function Include(ByVal path)
Dim tmpPath, tmpItem, arrPath, index
tmpPath = ""
arrPath = Split(path, "/")
For index = 0 To UBound(arrPath) - 1
tmpItem = arrPath(index)
tmpPath = tmpPath & tmpItem & "/"
Next
Include = Parse(tmpPath, arrPath(UBound(arrPath)))
End Function
Private Function Parse(ByVal root, ByVal fileName)
Call SetRoot(root)
Dim html
html = OpenRead(fileName)
Dim preg, pregResult
Set preg = New Regexp
preg.pattern = "<!--#include file=""([^""]*)""-->"
preg.global = True
preg.ignorecase = True
Dim htmlInclude
Set pregResult = preg.execute(html)
For Each htmlInclude In pregResult
html = Replace(html, htmlInclude, Include(root & htmlInclude.submatches(0)))
Next
Parse = "<% '" & root & fileName & " Start %" & ">" & vbCrLf & html & vbCrLf & "<% '" & root & fileName & " End %" & ">" & vbCrLf
End Function
Private Function SetRoot(ByVal rootPath)
If Right(rootPath, 1) <> "/" Then rootPath = rootPath & "/"
Root = rootPath
End Function
Private Function RealPath(ByVal path)
RealPath = Server.Mappath(Root & path)
End Function
Private Function OpenRead(ByVal path)
Dim txtFile
Set txtFile = FSO.OpenTextFile(RealPath(path))
OpenRead = txtFile.ReadAll()
txtFile.close
On Error GoTo 0
End Function
Public Function Save(ByVal path, ByVal body)
Dim txtFile
Set txtFile = FSO.CreateTextFile(Server.Mappath(path))
txtFile.write body
txtFile.close
Set txtFile = Nothing
Save = path
End Function
End Class
사용 도 매우 간단 합 니 다.Call new OneAsp.run(개발 판,포장 판)을 사용 하면 dev.asp 에 포 함 된 모든 코드 를 index.asp 로 포장 할 수 있 습 니 다.분 석 된 내용 만 가 져 오 려 면 Response.Write Server.Htmlencode(Call new OneAsp.include(개발 판)를 사용 할 수 있 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
pybid 11 로 C++실 현 된 함수 라 이브 러 리 를 봉인 하 는 방법 예시현재 C++로 작 성 된 함수 들 이 있 습 니 다.Python 으로 호출 할 수 있 도록 pybid 11 을 통 해 Python 모듈 에 패키지 할 수 있 습 니 다.Python 프로그램 을 작성 할 때 이 모듈 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.