Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Errore The process cannot access the file con System.IO.IOException

    Ciao a tutti ho un problema con una pagina aspx
    ho una funzione che va a caricare le foto sul server e che nella stessa fa anche il ridimensionamento per la miniatura

    mi sono accorto però che se carico due volte di seguito lo stesso file dal mio pc va in errore


    codice:
     String UploadedFile = MyFile.PostedFile.FileName;
    	   int ExtractPos =	UploadedFile.LastIndexOf("\\") + 1;
    	 
    	   //to retrieve only Filename from the complete path
    	   String UploadedFileName =  UploadedFile.Substring(ExtractPos,UploadedFile.Length - ExtractPos);
           UploadedFileName = UploadedFileName.Replace(" ","-");
    	   
    	   // Display information about posted file. Div is invisible by default	  
    	   FileName.InnerHtml =UploadedFileName;
           MyContentType.InnerHtml = MyFile.PostedFile.ContentType;
           ContentLength.InnerHtml = MyFile.PostedFile.ContentLength.ToString();
    
    
           FileDetails.Visible = true; //div is made visible
           // Save uploaded file to server at the in the Pics folder
    	   
           String percorso= Request.PhysicalPath;
           int daEliminare= percorso.Length -29;
           string nuovo = percorso.Substring(0, daEliminare) + "imgUsers/";
            
           //Response.Write(nuovo);
          // Response.End();
    	  
    	  
    	  	
           String idUser= Request.Form["idUser"];
    	   
    	   const string FMT = "yyyy-MM-dd";
    		DateTime now1 = DateTime.Now;
    		string DataTxt = now1.ToString(FMT);
    		DataTxt=DataTxt.Replace("-","");
           
          // buono ma con errore se ricarico lo stesso file
    	   MyFile.PostedFile.SaveAs(nuovo +  idUser+ DataTxt+ UploadedFileName);
    ho letto su altri post che dovrei usare il dispose()
    c'ho provato aggiungendo questa riga
    MyFile.Dispose();

    ma non succede nulla
    Come posso risolvere il problema?

    l'errore che mi viene restituito è questo
    D:\home\site\wwwroot\imgUsers\1120151127templatemo _member_02.jpg' because it is being used by another process.

    Exception Details: System.IO.IOException: The process cannot access the file 'D:\home\site\wwwroot\imgUsers\1120151127templatem o_member_02.jpg' because it is being used by another process.


    Grazie in anticipo

  2. #2
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    guarda, il problema è sempre lo stesso: usa SEMPRE il costrutto using, in modo da fare SEMPSRE il dispose delle risorse
    Pietro

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.