Ciao a tutti,
ho un sito web il cui compito tra gli altri è quello di produrre dei report in formato excel.
Purtroppo io sviluppo su un ambiente Xp, su cui il tutto funziona, ma eseguo il test in un ambiente server 2003, dove le cose non funzionano.. ahimè...
Il codice per produrre l'excel, o almeno la parte che va in errore è la seguente:
System.Threading.Thread.CurrentThread.CurrentCulture =
System.Globalization.CultureInfo.CreateSpecificCulture("en-US");
string path = Server.MapPath("xls");
string file;
file = "ProjectionSchema-" + loginId.ToString() + ".xlsx";
Microsoft.Office.Interop.Excel.Application oExcel = new Microsoft.Office.Interop.Excel.Application();
object oMissing = System.Reflection.Missing.Value;
Microsoft.Office.Interop.Excel.Workbook oWorkbook = oExcel.Workbooks.Add(oMissing);
L'errore mi viene generato nella riga in cui aggiungo un nuovo worksheet al workbook:
Microsoft.Office.Interop.Excel.Workbook oWorkbook = oExcel.Workbooks.Add(oMissing);
e il msg è il seguente:
Memoria o spazio su disco insufficiente. Impossibile aprire o salvare ulteriori documenti.
• Per aumentare la memoria disponibile, chiudere le cartelle di lavoro o i programmi non necessari.
• Per rendere disponibile spazio su disco eliminare i file non necessari.
Ultime note: come ho fatto in locale ho aggiunto anche sul server di test i diritti di esecuzione/lancio all'utente che esegue l'applicationPool ( nel mio caso è: SERVIZIO DI RETE )sul componente COM di excel tramite il dcomcnfg, ma ciò non è servito.
Ho anche aggiunto i diritti di controllo completo all'utente che esegue l'applicationPool ( nel mio caso è: SERVIZIO DI RETE ) sulla directory in cui ho pubblicato.nulla..
Ora, credo il problema sia di ambiente, ma ho comunque dei dubbi: qualcuno sa darmi qualche input o meglio ancora indicarmi la via maestra per venirne fuori?
dimenticavo: ovviamente ho controllato la disponibilità di ram o spazio sull'hard-disk e sono entrambe elevate.
Ciao a tutti
Sergio
Modificato da historyX il 13 luglio 2009 16.48 -