ho provato anche a cancellare la seuente parte iniziale del codice.....

<%
set custRs = Server.CreateObject("ADODB.Recordset")
custRs.Fields.Append "nome", 200, 300 ' adVarChar
custRs.Fields.Append "dimensione", 2, 4 ' smallint
custRs.Fields.Append "data", 7 ' Date
custRs.Open

' popolamento
Set FileObject = Server.CreateObject("Scripting.FileSystemObject")

Set f = FileObject.GetFolder(strPath)

For Each f1 in f.Files
custRs.AddNew
custRs("nome") = f1.name
custRs("data") = f1.DateCreated
Next

Set f = Nothing
Set FileObject = Nothing

custRs.Sort = "data DESC"

If Not custRS.EOF AND Not custRS.BOF Then
nomefile = custRs("nome")

Set FileObject = Server.CreateObject("Scripting.FileSystemObject")
Set f = FileObject.getfile(StrPath&"\"&nomefile)
he = ImageHeight(StrPathShort & nomefile)
wi = ImageWidth(StrPathShort & nomefile)
resized = ImageResize(StrPathShort & nomefile, 80, 80, "center")
Set f = Nothing
Set FileObject = Nothing
Else
%>

<%
End If
%>

e il file funziona sempre e con lo stesso ordinamento...quindi non dipende da esso.
Da cosa puo dipendere allora l'ordinamento decrescente per nome?
e come si fa ad invertirlo oppure a far ordinare per data?