Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    Cataloghi Zanox, Troppo grandi da Uplodare.

    Ho questo problema:
    Devo importare nel server (aruba) dei files catalogo in formato CSV ma sono troppo grandi e la pagina mi va in errore.

    Le alternative:
    - Inviare un file zippato ma non so come fare in asp per poterlo gestire
    - aprire il file in locale (con IIS su client) e poi spedire al server le informazioni a piccoli pacchetti.

    Se potessi gestire in qualche modo i files zippati su Aruba avrei risolto senza tante complicazioni.

    Mi date un suggerimento?
    Grazie e buon anno
    Io nella vita ho visto cose che voi astemi neanche potete immaginare.

  2. #2
    è una cosa che devi fare una volta soltanto o di routine? e quanto è grande il file?

  3. #3
    Ciao e buon anno a tutto il forum
    io su Aruba ho risolto con: sftpapplet che puoi scaricare da qui

  4. #4
    carichi il file zippato e lo unzippi con asp.net

    Allora,

    in .net ho trovato questo componente da mettere nella cgi-bin (o solo bin, vattelo a ricordare come si chiama) di aruba http://www.icsharpcode.net/OpenSource/SharpZipLib/

    una volta fatto, un esempio di codice te lo riporto qui:

    codice:
    <%@ Page Language="C#" AutoEventWireup="true" Debug="true" ContentType="text/xml" %>
    <%@ Register TagPrefix="ic" Namespace="ICSharpCode.SharpZipLib" Assembly="ICSharpCode.SharpZipLib, Version=0.85.1.271, Culture=neutral, PublicKeyToken=1b03e6acf1164f73, Safe=true" %>
    <%@ import Namespace="ICSharpCode.SharpZipLib.Zip" %>
    <%@ import Namespace="ICSharpCode.SharpZipLib.Checksums" %>
    <%@ import Namespace="System.IO" %>
    <script runat="server">
    
    	void Page_Load(Object sender, EventArgs e) {
    	
    		string archiveId=Request.QueryString["id"];
    		
    		if(archiveId.Trim().Length==0){
    			error("ArchiveId vuoto");
    		}else{
    			
    			string fileZip=Server.MapPath("/public/archivi_photo_temp/"+archiveId+"/temp.zip");
    			string outputFolder=Server.MapPath("/public/archivi/"+archiveId+"/photos");
    			
    			bool ret;
    			ret=UnZipFiles(fileZip,outputFolder,true);
    			
    			if(!ret){
    				error("Error on unzipping file");
    			}else{
    				print(200, "Operazione effettuata correttamente");
    			}
    		}
    	
    	}
    	
    	private void error(String error)
    	{
    		// errore
    		print(100, error);
    	}
        
        private void print(int status, String msg)
        {
            String printed;
    
            printed = @"<?xml version=""1.0"" encoding=""iso-8859-1""?>";
            printed += @"<status><code>" + status + @"</code><desc>" + msg + @"</desc></status>";
    
            Response.Write(printed);
        }
    	
    	//OutputFolder è la direcotry dove salvare i file nello zip
         public bool UnZipFiles(string zipPathAndFile, string outputFolder, bool deleteZipFile)
    	{
    		ZipInputStream s = new ZipInputStream(File.OpenRead(zipPathAndFile));
    		
    		bool ret=false;
    		
    		ZipEntry theEntry;
    		string tmpEntry = String.Empty;
    		while ((theEntry = s.GetNextEntry()) != null)
    		{
    			string directoryName = outputFolder;
    			string fileName = Path.GetFileName(theEntry.Name);
    			// create directory 
    			if (directoryName != "")
    			{
    				Directory.CreateDirectory(directoryName);
    			}
    			if (fileName != String.Empty)
    			{
    				if (theEntry.Name.IndexOf(".ini") < 0)
    				{
    					string fullPath = directoryName + "\\" + theEntry.Name;
    					fullPath = fullPath.Replace("\\ ", "\\");
    					string fullDirPath = Path.GetDirectoryName(fullPath);
    					if (!Directory.Exists(fullDirPath)) Directory.CreateDirectory(fullDirPath);
    					FileStream streamWriter = File.Create(fullPath);
    					int size = 2048;
    					byte[] data = new byte[2048];
    					while (true)
    					{
    						size = s.Read(data, 0, data.Length);
    						if (size > 0)
    						{
    							streamWriter.Write(data, 0, size);
    						}
    						else
    						{
    							break;
    						}
    					}
    					streamWriter.Close();
    				}
    			}
    		}
    		s.Close();
    		if (deleteZipFile)
    			File.Delete(zipPathAndFile);
    			
    		return true;
    	}
    
    </script>
    ti dovrebbe funzionare diretto così, non mi pare di avere usato una versione ricompilata.


    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  5. #5
    @optime
    è una cosa che dovrei fare di tanto in tanto. In verità potrei popolare il database in locale e poi uplodare l'archivio.

    @michele.santoro
    non funziona. Sia in locale che in remoto mi da un errore di installazione activex per mancanza di firma.

    @Santino83_02
    ora ci provo e vediamo che ne esce fuori.
    Io nella vita ho visto cose che voi astemi neanche potete immaginare.

  6. #6
    se lo devi fare ogni tanto, caricalo con FTP e poi lo importi col tuo script. that easy!

  7. #7
    in effetti è la cosa più semplice.
    L'unico inconveniente è che devo sempre essere sul PC con il sito in locale.
    Io nella vita ho visto cose che voi astemi neanche potete immaginare.

  8. #8
    Originariamente inviato da optime
    se lo devi fare ogni tanto, caricalo con FTP e poi lo importi col tuo script. that easy!
    ho capito che ancora stai digerendo natale e capodanno, però un attimo di curiosità e suggerire l'uso di upload zip è più interessante no?
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  9. #9
    @Santino83_02

    Ti dico subito che con asp-net ci litigo sempre.

    Ho scaricato la DLL che mi hai indicato e l'ho messa nella cartella cgi-bin (che già esisteva)
    MI trovo 3 versioni della DLL
    net-11
    net-20
    netcf-20
    ho preso la net-11

    Ho fatto il copia-incolla del listato che mi hai passato.
    l'ho salvato col nome: ExtractZip.aspx
    dalla routine di upload lo richiamo passandogli il nome del file zip.

    Mi da subito errore nella riga 2

    Errore del parser
    Descrizione: Errore durante l'analisi di una risorsa necessaria per soddisfare la richiesta. Rivedere i dettagli relativi all'errore e modificare in modo appropriato il file di origine.

    Messaggio di errore del parser: Impossibile caricare il file o l'assembly 'ICSharpCode.SharpZipLib, Version=0.85.1.271, Culture=neutral, PublicKeyToken=1b03e6acf1164f73' o una delle relative dipendenze. The system cannot find the file specified.

    Errore nel codice sorgente:


    Riga 1: <%@ Page Language="C#" AutoEventWireup="true" Debug="true" ContentType="text/xml" %>
    Riga 2: <%@ Register TagPrefix="ic" Namespace="ICSharpCode.SharpZipLib" Assembly="ICSharpCode.SharpZipLib, Version=0.85.1.271, Culture=neutral, PublicKeyToken=1b03e6acf1164f73, Safe=true" %>
    Riga 3: <%@ import Namespace="ICSharpCode.SharpZipLib.Zip" %>
    Riga 4: <%@ import Namespace="ICSharpCode.SharpZipLib.Checksums" %>


    File di origine: /UpLoad/ExtractZip.aspx Riga: 2

    Analisi del caricamento dell'assembly: Le informazioni che seguono possono aiutare a stabilire perché non è stato possibile caricare l'assembly 'ICSharpCode.SharpZipLib, Version=0.85.1.271, Culture=neutral, PublicKeyToken=1b03e6acf1164f73'.


    WRN: Assembly binding logging is turned OFF.
    To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
    Note: There is some performance penalty associated with assembly bind failure logging.
    To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].


    Che devo fare???
    Io nella vita ho visto cose che voi astemi neanche potete immaginare.

  10. #10
    Originariamente inviato da Santino83_02
    ho capito che ancora stai digerendo natale e capodanno, però un attimo di curiosità e suggerire l'uso di upload zip è più interessante no?
    ma io mica passo tutto il tempo davanti al pc come te - che quindi non puoi far bagordi

    tornando al problema, non sono dell'UCAS! se posso faticare di meno, ben venga! e quindi, perché - appunto - faticare inutilmente? al suo posto farei esattamente come ho suggerito.



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 © 2026 vBulletin Solutions, Inc. All rights reserved.