Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di orcim
    Registrato dal
    May 2003
    Messaggi
    1,692

    [Fso] Eliminazione file dopo download forzato

    Ciao, perchè dopo il download forzato del file, non riesco a cancellarlo dal server?

    Grazie per i suggerimenti e buona pasqua a tutti.
    codice:
    <%
            Set oFso = CreateObject("Scripting.FileSystemObject")      
    
            sSourceFile = "D:\Inetpub\wwwroot\public\test.pptx"
            sDestinationFile = "D:\Inetpub\wwwroot\public\test_ " & Session.SessionID & ".pptx"
    
            oFSO.CopyFile sSourceFile, sDestinationFile
    
            strFilePath = sDestinationFile
    
            Set oFile = oFso.GetFile(strFilePath)
                    
            strFileName = UCase(oFile.Name) 
            strFileSize = CLNG(oFile.size) 
            
            Set oFile = Nothing 
            Set oFso = Nothing 
    
            Const adTypeBinary = 1 
    
            Response.Clear 
    
            Set objStream = Server.CreateObject("ADODB.Stream") 
            objStream.Open 
            objStream.Type = adTypeBinary 
            objStream.LoadFromFile strFilePath 
    
            strFileType = lcase(Right(strFileName, 4)) 
         
        Select Case strFileType 
            Case ".asf" 
                ContentType = "video/x-ms-asf" 
            Case ".avi" 
                ContentType = "video/avi" 
            Case ".doc" 
                ContentType = "application/msword" 
            Case ".zip" 
                ContentType = "application/zip" 
                ContentType = "application/x-zip-compressed" 
            Case ".xls" 
                ContentType = "application/vnd.ms-excel" 
            Case ".gif" 
                ContentType = "image/gif" 
            Case ".jpg", "jpeg" 
                ContentType = "image/jpeg" 
            Case ".wav" 
                ContentType = "audio/wav" 
            Case ".mp3" 
                ContentType = "audio/mpeg3" 
            Case ".mpg", "mpeg" 
                ContentType = "video/mpeg" 
            Case ".rtf" 
                ContentType = "application/rtf" 
            Case ".htm", "html" 
                ContentType = "text/html" 
            Case ".asp" 
                ContentType = "text/asp" 
            Case Else 
                ContentType = "application/octet-stream" 
        End Select 
         
        Response.AddHeader "Content-Disposition", "attachment; filename=" & strFileName 
        Response.AddHeader "Content-Length", strFileSize 
    
        Response.Charset = "UTF-8" 
        Response.ContentType = ContentType 
         
        Do While Not objStream.EOS 
            Response.BinaryWrite objStream.Read(8192)
            Response.Flush 
        Loop 
    
        objStream.Close 
        Set objStream = Nothing
              
        if oFso.FileExists(sDestinationFile) then
           oFso.DeleteFile(sDestinationFile)
        end if
        
        if oFso.FileExists(sDestinationFile) then
           oFso.DeleteFile(sDestinationFile)
        end if    
    
        set oFso = nothing
           
    %>
    "Ubi Maior, Minor Cessat"
    Domandare è lecito, rispondere è cortesia...
    A tutti è dovuta una risposta, comunque...

    “Dio gradisce molto di più le bestemmie dell’uomo disperato che non le lodi del benpensante la domenica mattina durante il culto“ Martin Lutero

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998

    Re: [Fso] Eliminazione file dopo download forzato

    Originariamente inviato da orcim
    codice:
              
        if oFso.FileExists(sDestinationFile) then
           oFso.DeleteFile(sDestinationFile)
        end if
        
        if oFso.FileExists(sDestinationFile) then
           oFso.DeleteFile(sDestinationFile)
        end if
    Quale delle due non ti funziona?
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente di HTML.it L'avatar di orcim
    Registrato dal
    May 2003
    Messaggi
    1,692
    Scusa errore nel copia/incolla:

    codice:
    <%
            Set oFso = CreateObject("Scripting.FileSystemObject")      
    
            sSourceFile = "D:\Inetpub\wwwroot\public\test.pptx"
            sDestinationFile = "D:\Inetpub\wwwroot\public\test_ " & Session.SessionID & ".pptx"
    
            oFSO.CopyFile sSourceFile, sDestinationFile
    
            strFilePath = sDestinationFile
    
            Set oFile = oFso.GetFile(strFilePath)
                    
            strFileName = UCase(oFile.Name) 
            strFileSize = CLNG(oFile.size) 
            
            Set oFile = Nothing 
            Set oFso = Nothing 
    
            Const adTypeBinary = 1 
    
            Response.Clear 
    
            Set objStream = Server.CreateObject("ADODB.Stream") 
            objStream.Open 
            objStream.Type = adTypeBinary 
            objStream.LoadFromFile strFilePath 
    
            strFileType = lcase(Right(strFileName, 4)) 
         
        Select Case strFileType 
            Case ".asf" 
                ContentType = "video/x-ms-asf" 
            Case ".avi" 
                ContentType = "video/avi" 
            Case ".doc" 
                ContentType = "application/msword" 
            Case ".zip" 
                ContentType = "application/zip" 
                ContentType = "application/x-zip-compressed" 
            Case ".xls" 
                ContentType = "application/vnd.ms-excel" 
            Case ".gif" 
                ContentType = "image/gif" 
            Case ".jpg", "jpeg" 
                ContentType = "image/jpeg" 
            Case ".wav" 
                ContentType = "audio/wav" 
            Case ".mp3" 
                ContentType = "audio/mpeg3" 
            Case ".mpg", "mpeg" 
                ContentType = "video/mpeg" 
            Case ".rtf" 
                ContentType = "application/rtf" 
            Case ".htm", "html" 
                ContentType = "text/html" 
            Case ".asp" 
                ContentType = "text/asp" 
            Case Else 
                ContentType = "application/octet-stream" 
        End Select 
         
        Response.AddHeader "Content-Disposition", "attachment; filename=" & strFileName 
        Response.AddHeader "Content-Length", strFileSize 
    
        Response.Charset = "UTF-8" 
        Response.ContentType = ContentType 
         
        Do While Not objStream.EOS 
            Response.BinaryWrite objStream.Read(8192)
            Response.Flush 
        Loop 
    
        objStream.Close 
        Set objStream = Nothing
              
        if oFso.FileExists(sDestinationFile) then
           oFso.DeleteFile(sDestinationFile)
        end if
    
        set oFso = nothing
           
    %>
    "Ubi Maior, Minor Cessat"
    Domandare è lecito, rispondere è cortesia...
    A tutti è dovuta una risposta, comunque...

    “Dio gradisce molto di più le bestemmie dell’uomo disperato che non le lodi del benpensante la domenica mattina durante il culto“ Martin Lutero

  4. #4
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,783
    credo che il tentativo di eliminazione avvenga prima che il file sia stato creato,
    quindi si trova ancora nella cartella temp del server.
    o il fatto che sia in uso potrebbe impedirne l'eliminazione.

    se provi a verificarne esistenza e caratteristiche, al posto di eliminarlo, cosa restituisce?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.