Dunque sto cercando di creare un'applicazione che attraverso un semplice form permetta di inviare mail con allegati.
Copia-incollando in giro sono arrivato a questo:

form.asp
codice:
<HTML>
<HEAD>
<TITLE>Manda Email</TITLE>
</HEAD>
<BODY>

<FORM ACTION="manda.asp" METHOD="post" enctype="multipart/form-data">

<div align="center">
<table border="0" width="85%" celpadding="2" cellspacing="2">

<tr>
<td>
<h1>Manda E-mail<hr align="LEFT" size="1" width="100%" color="navy"></h1>
</td>
</tr>

<tr>
<td>
Compila il Form
</td>
</tr>

<td align="center">


<table width="60%" border="0" celpadding="2" cellspacing="2">

<tr>
<td>Subject</td>
<td><INPUT NAME="subject" TYPE="TEXT" size=30 MAXLENGTH=50></td>
</tr>

<tr>
<td>Email destinatario</td>
<td valign="top">
<INPUT NAME="destinatario" TYPE="TEXT" ALIGN=left size=30 MAXLENGTH=50>
</td>
</tr>

<tr>

<tr>
<td valign="top">Testo</td>
<td><TEXTAREA NAME="testo" ROWS=7 COLS=42></TEXTAREA></td>
</tr>

<tr>
<td valign="top">Allega</td>
<td><input type="file" name="file1" /></td>
</tr>


<tr>
<td colspan="2" align="center">
<table width="50%" border="0" celpadding="6" cellspacing="2">

<tr> 
  <td><input type="submit" name="invio" value="   Invia    "></td>
  <td align="right">
<INPUT TYPE="reset" NAME="reset" VALUE="   Reset   "></td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
</FORM>
</BODY>
</HTML>


manda.asp
codice:
<%
Dim form, nome, allegato
%>
<Html>
<head>
<title>Manda Email</title>
</head>
<body>



<%



Dim oUpload 
Set oUpload = new cUpload 
oUpload.Load
if oUpload.Count=0 then
	Response.Write "Nessun file caricato"
                  response.write "<a href=Javascript:history.go(-1)>Pagina precedente</a>"
Else
	While Not oUpload.EOF
		oUpload.Save()

		Response.Write "Salvo il file : " & oUpload.GetFileName() & "
"
		Response.Write "Percorso fisico : " & oUpload.GetCompletePathFile() & "
"
                                    allegato = oUpload.GetFileName()
		Response.Write "Percorso Web : " & oUpload.GetHTTPPathFile() & "
"
		Response.Write "Dimensioni del file : " & oUpload.Files("Size") & "
"
		Response.Write "<hr>"

		oUpload.MoveNext
	Wend
End if
oUpload.PrintStatus "Report"
Set oUpload=Nothing 



call Main()
Sub Main()
'se la lungezza è 0 non c'e niente nell email
If Len(Request.Form("mittente")) = 0 then
no_email()
else 
manda_posta(form)
ecco_fatto(nome)
end if
End sub



Sub no_email()
'allora diciamo al cliente che senza una email non possiamo rispondergli
response.write "<div align='center'>"
response.write "<table border='0' width='80%' cellspadding='4' cellspacing='4'>" 
response.write "<tr><td>Non hai inserito il tuo indirizzo E-mail</td></tr>"
response.write "<tr><td>Per favore, torna indiedro e ricompila il form </td></tr>"
response.write "<tr><td align='middlè>"
response.write "<a href=Javascript:history.go(-1)>Pagina precedente</a>"
response.write "</td></tr></table></div>"
End Sub



Sub manda_posta(form)
Dim mittente, testo
Dim objMail, objMailConfig, mandamiquesto
'facciamo la vendemmia dell'input
nome = Request.Form("subject")
mittente = Request.Form("mittente")
testo = Request.Form("testo")
mandamiquesto = testo 
'costruiamo un NewMail oggetto
Set objMail = Server.CreateObject("CDO.Message")
Set objMailConfig = Server.CreateObject ("CDO.Configuration")

' Proprietà di invio
with objMailConfig
  ' SMTP mail server
  .Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.fastwebnet.it"
  ' SMTP port
  .Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
  ' CDO port
  .Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
  ' Timeout
  .Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
  .Fields.Update
end with

Set objMail.Configuration = objMailConfig

'adesso che abbiamo accesso a tuttle le sue proprieta, usiamole
'prendiamo il nome dal Form di input
objMail.From = "mia_mail@hotmai.it"
'mandiamola
objMail.To = Request.Form("destinatario")
'mettiamoci un riga per il titolo
objMail.Subject = nome
'e nel corpo ci mettiamo la stringa che abbiamo costruito
objMail.TextBody = mandamiquesto
objMail.AddAttachment Server.MapPath("allegato")
'al momento è poco importante, direi
objMail.Fields("urn:schemas:httpmail:importance").Value = 0
objMail.Fields.update() 
'e via che va
objMail.Send
'e adesso puliamo prima di andarcene
Set objMail = Nothing
end sub



Sub ecco_fatto(nome)
response.write "<div align='center'>"
response.write "<table border='0' width='80%' cellspadding='4' cellspacing='4'>" 
response.write "<tr><td>Grazie " & nome & " per la mail</td></tr>"
response.write "<tr><td align='middlè>"
response.write "<a href=Javascript:history.go(-2)>Torna indietro</a>"
response.write "</td></tr></table></div>"
End sub



%>
</body>
</html>


upload.asp è il file di baol (ho scaricato upload312.zip linkato in altri thread di questo forum)



Mi da questo errore:

Tipo di errore:
Errore di run-time di Microsoft VBScript (0x800A01A8)
Necessario oggetto: 'Files'
/cartella/upload.asp, line 380
Ovviamente non sono andato a spulciarmi il file... Sapete dirmi cos'è?