webForumDet fria alternativet

Komponent med diverse klasser

ASP

1 svar · 4 232 visningar · startad av SPiN

Medlem sedan mars 20007 896 inlägg
Frågan#1

Hej!

Har fått frågor om en komponent och klass som jag gjorde för länge, länge sedan. Komponenten kallade jag då för Command, och klassen som efterfrågades var en template-klass. I komponenten ligger lite fler klasser, en kalender-klass, en logg-klass samt en databas-klass. Jag har ingen aning om ifall de fungerar eller inte, men jag har för mig att de fungerade för en sisådär 2-3 år sedan. :)

I Zip-filen ligger det 9 filer, där alla utom en hör till ActiveX-dll-projektet. Den nionde filen är en färdigkompilerad dll-fil, där alla klassern till komponenten finns med ( Tror jag... ). Känner du att det är säkrare att kompilera källkoden själv, vilket jag skulle ha tyckt ;), men inte vet hur man gör - sök i ASP/VBScript-forumet där det har disskuterats en del om komponenter.

Command.Template
Exempel på användning:

MyTemplate.tpl

<html>
<head>
<title>{PAGE_TITLE}</title>
</head>
<body>
<h1>{PAGE_HEADER}</h1><br /><br />
Välkommen!<br />
<i>{PAGE_CONTENT}</i><br /><br />
<small>{PAGE_FOOTER}</small>
</body>
</html>

MyASP.asp

<%
Dim objTpl
Dim strTitle, strHeader, strContent

strTitle = "Min sida"
strHeader = "Min sidas rubrik"
strContent = "Här är min sidas innehåll! Håll till godo!"

set objTpl = Server.CreateObject( "Command.Template" )
objTpl.OpenTpl "MyTemplate.tpl"

objTpl.setValue "PAGE_TITLE", strTitle
objTpl.setValue "PAGE_HEADER", strHeader
objTpl.setValue "PAGE_CONTENT", strContent
objTpl.noValue "PAGE_FOOTER"

objTpl.Present

set objTpl = Nothing
%>

Den parsade sidan som skickas till klienten:

<html>
<head>
<title>Min sida</title>
</head>
<body>
<h1>Min sidas rubrik</h1><br /><br />
Välkommen!<br />
<i>Här är min sidas innehåll! Håll till godo!</i><br /><br />
<small></small>
</body>
</html>

Metoder & funktioner i klassen Template
OpenTpl( String ) - Öppnar den angivna filen som template-fil. Filnamnet och sökväg skickas som parameter.
setValue( String, String ) - Byter ut en nyckel i template-filen mot valfritt värde. Nyckelnamnet är första parametern och värdet som ska ersätta nyckeln är andra parametern.
noValue( String ) - Om en nyckel inte ska sättas, utan tas bort, anges nyckeln som parameter till metoden.
Present( void ) - Skriver ut template-filen till klienten. Notera att du inte ska använda dig av Response.Write i ditt ASP-dokument.

De övriga klasserna ger jag inga exempel till, de får ni gissa er till. ;)

Frågor och dylikt. kan ställas i tråden: http://www.webforum.nu/showthread.php?s=&postid=71409

Medlem sedan mars 20007 896 inlägg
#2

Jag glömde självklart att bifoga zip-filen. :OO

264 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)