19 messaggi dal 14 marzo 2001
Buongiorno,
utilizzo il seguente codice per leggere un file Excel (vb .net).

           strFClasse = oCld.GetSettingBus("BSJVE001", "OPZIONI", ".", "FileClasse", Path.Combine(oApp.AscDir, "Classi.xls"), " ", Path.Combine(oApp.AscDir, "Classi.xls"))
            MyConnection = New System.Data.OleDb.OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;Data Source='" & strFClasse & "';Extended Properties=Excel 8.0;")
            MyConnection.Open()

            strSCl = "SELECT * FROM [Classi$A:B] WHERE [Group] = " & CStrSQL(strCodIn)
            MyCommand = New System.Data.OleDb.OleDbDataAdapter(strSCl, MyConnection)
            MyCommand.Fill(dtTemp)


In test funziona tutto (windows 7) in produzione ho il seguente errore:
OleDbException: -2147467259 - Errore nella creazione del file.

Grazie in anticipo.
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao,
probabilmente il provider Microsoft.Jet.OLEDB.4.0 non è installato nel server di produzione, oppure è installata la versione a 32 bit ma la tua applicazione sta girando in un application pool configurato per non eseguire applicazioni a 32bit.

Se hai il controllo amministrativo del server, segui questi passi per abilitare l'esecuzione di applicazioni a 32 bit
https://help.webcontrolcenter.com/kb/a1114/how-to-enable-32-bit-application-pool-iis-7-dedicatedvps.aspx

Altrimenti, puoi usare sistemi alternativi per leggere il tuo file Excel, tipo usare la libreria NPOI che non necessita di prerequisiti da installare nel server.
Leggi questo articolo, contiene del codice di esempio (vedi in particolar modo il paragrafo "Way 2" che mostra l'uso della libreria NPOI)
http://www.codeproject.com/Tips/813187/Csharp-Read-and-Write-Excel-xls-and-xlsx-Files-Con

ciao,
Moreno

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.