ASP - envoi de fichiers au client

Bonjour à tous,

bon je débute en ASP et j’ai une petite question à vous poser. Je souhaite pouvoir envoyer au client des fichiers posés sur le serveur dans un dossier qui n’est pas accessible en http. Pour illustrer l’utilisateur a un lien vers un fichier, mais ce fichier est sur C: (par exeeeeemple) et pas dans www/ .

Je sais que si je fais un lien vers C:\file.xls (et oui c est un fichier excel) , le lien pour le poste client sera sur SON c:…
Bref quelle méthode utilisée?

  • Sur un click sur le lien, je copie le fichier dans le dossier web temporairement? (pas top niveau sécurité…)
  • Sur un click,je mets le contenu du fichier ds un buffer que je balance au client (ca ca me plait plus déjà).

Comme je débute en ASP si quelqu’un sait comment réaliser l’une ou l’autre des solutions… je l’écoute :slight_smile:

Merci d’avance

Quelle version ?
Asp 3, .Net 1.1 ou .Net 2.0 ?

Hello,

ASP 3 :slight_smile:

en gros j aimerai créer un objet que je vais remplir avec un fichier local et balancer en réponse.
J ai vi qu’il y avait CreateObjet(“Excel.Application”), mais je n’ai pas Excel sur le serveur… puis de toutes manières moi je veux juste copier un fichier.

J ai trouvé ma réponse ici :
http://support.microsoft.com/kb/276488/

maintenant j aimerai juste que le nom du fichier ne soit pas le nom de la page (comme le fichier est envoyé au sein de la page il s appelle download.xls… ).

EDIT:
Ok c est bon ca marche le code final sera :

<%
'Set the content type to the specific type that you are sending.
Response.ContentType = "application/x-msexcel"
Response.AddHeader "content-disposition", "attachment;filename=test.xls"


Const adTypeBinary = 1
Dim strFilePath

strFilePath = "C:\test.xls"

Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = adTypeBinary
objStream.LoadFromFile strFilePath 

Response.BinaryWrite objStream.Read

objStream.Close
Set objStream = Nothing
%>