ho un file "download.asp" che tramite ado stream invia al client qualsiasi file

funziona perfettamente, solo che se devo scaricare un file del tipo "ciao mamma.pdf" mi fa scaricare il file "ciao"
in pratica il file viene inviato al client, ma tutto quello che sta dopo lo spazio viene troncato, compresa l'estensione :S

se ad esempio usassi "ciao_mamma.pdf" tutto funzionerebbe perfettamente, ma purtroppo non ho controllo completo sui file, e prima o poi ne capiterà uno con lo spazio

il codice è questo, spero che ci sia una soluzione

<%
FileName = Request("file")
path = Request("path")

strFileType = lcase(Right(FileName, 4))

Dim fileSize , fileName , FileFullPath
'FileSize=Dimensioni del file da scaricare in BYTES
'FileName=Nome da dare al file che scarico
'FileFullPath=Nome e percorso del file da scaricare

fileFullPath = Server.MapPath(path & filename)


Dim fso, fileObj
Set fso = CreateObject("Scripting.FileSystemObject")
Set fileObj = fso.GetFile(FileFullPath)

fileSize = fileObj.size
fileName = fileObj.name


Set fileObj = nothing
Set fso = nothing


Response.Clear

Dim adoStream
Set adoStream = Server.CreateObject("ADODB.Stream")
adoStream.Open()
adoStream.Type = 1
adoStream.LoadFromFile fileFullPath
Response.AddHeader "Content-Disposition", "attachment;filename=" & fileName & ";"
Response.AddHeader "Content-Length", fileSize
Response.ContentType = "application/octet-stream"
Response.BinaryWrite( adoStream.Read() )
adoStream.Close
Set adoStream = Nothing
%>