webForumDet fria alternativet

Skicka filer till användare utan att servern exekverar koden!

ASP

6 svar · 298 visningar · startad av JE

Medlem sedan juni 2000144 inlägg
Frågan#1

Går det?
Om man t.ex vill skicka en ASP fil till en användare utan att servern exekverar koden.
Ingen som har lite kod att dela med sig av isf?

Medlem sedan dec. 19996 721 inlägg
#2

Byt filändelse till txt eller läs in filen med FileSystemObject, sätt response.contenttype="text/plain" och spola ut innehållet.

Medlem sedan juni 2000144 inlägg
#3

Sitter och testar lite med en pop3 komponent men skickar man med en asp fil som en attachment i ett mail och sedan tittar på den via ett webbgränssnitt så exekverar servern asp koden och visar resultet. Detta är ju inte speciellt smart.

Testade detta men när den skrev ut innehållet från testfile.asp så blev det ett mellanslag mellan varje tecken.
Sedan syntes det inte på sidan utan först när man tog View Source...

Finns det något sätt att tvinga browsern att man ska spara ner alla filer? Så att man slipper att den ska exekvera htm, asp sidor eller visa gif bild osv..

Set fso = CreateObject("Scripting.FileSystemObject")
Set fil = fso.Opentextfile("d:\hemsidor\misc\download\testfile.asp")
FileContent = fil.ReadAll
response.contenttype = "text/plain" 
response.binarywrite FileContent

[Redigerat av JE den 03 jan 2001]

Medlem sedan dec. 19996 721 inlägg
#4

Hur browser hanterar filer styrs av dess contenttype, men det finns inget sätt för browsern att få se ASP-kod, om man inte ställt in detta på servern.

Du ska inte använda binarywrite utan bara gamla goa write. ASP-kod är inte binär.

Medlem sedan juni 2000144 inlägg
#5

Ah, tackar.

Finns det något sett att göra så att alla filer MÅSTE laddas ner, vare sig det är .gif, .pdf eller .htm? Är det tal om en download komponent då eller?

Medlem sedan dec. 19998 577 inlägg
#6

Här är en sub jag brukar använda vid sådannahär tillfällen:

<script RunAt="Server" Language="VBScript">
	Sub WriteFileToClient(file)
		Dim ByteArray
		Set ByteArray	 = CreateObject("scriptutils.ByteArray")
		ByteArray.ReadFrom(File)
		Response.AddHeader "content-length", ByteArray.Length
		Response.AddHeader "content-disposition", "attachment;filename=" & filnamn
		Response.ContentType = "application/msdownload"
		Response.BinaryWrite ByteArray.ByteArray
		Set ByteArray = nothing
	End sub
</script>

Dock krävs det en komponent ifrån Dimac.net för att den skall funka... men kolla dä också...

------------------
It's now safe to turn your computor to the left.
Kom hem till mig...

[Redigerat av Vide den 03 jan 2001]

Medlem sedan juni 2000144 inlägg
#7

Tackar, sitter och testar aspSmartUpload som har en Download funktion som verkar rätt ok.

258 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
130 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)