Programmare ed Installare Applicativi .net per Collegarsi ad AS/400

giovedì 09 dicembre 2004 - 16.25

Earendil81 Profilo | Newbie

Problema:

Non riesco a far girare un applicativo che si connette ad un As/400 senza installare il Client Access(che fornisce l'OLEDB provider che uso per connettermi all'AS400). Il mio problema è riuscire a creare un applicazione che senza altre installazioni riesca a comprendere il ProviderOleDb in modo da farlo girare su qualsiasi PC. Qualcuno ha idea di come si può fare???

Ringranzio in anticipo chiunque mi illuminerà su questa questione

Brainkiller Profilo | Guru

Ciao,
io non credo proprio si possa fare. Così funziona un po' anche per gli altri DB.
Se tu vuoi usare la classe OracleClient per connetterti ad Oracle lo puoi fare solo e soltanto se hai installato anche l'Oracle Client.
Così funziona con l'AS400. infatti è abbastanza una seccatura dover sempre installare il client.

ciao
david

Earendil81 Profilo | Newbie

TI dirò...un pò lo sospettavo.
L'unica soluzione era riuscire ad utilizzare l'ODBC driver per fare la connessione però utilizzandolo visual studio mi insulta dicendomi "riferimento ad un oggetto non impostato su istanza di oggetto" (in pratica poteva mandarmi a quel paese e ne sapevo uguale) e controllando e ricontrollando non trovo alcun errore nel codice
- Stringa di connessione corretta
-Dataset inizializzato correttamente

così per prova ho provato ad utilizzare lo stesso codice su una connessione ad Access ed infatti tutto funziona a meraviglia....

Ho provato ad aggiornare i driver scaricandoli da microsoft e niente

Le ho tentate davvero tutte, penso che oramai non mi rimanga che utilizzare qualche rito vodoo...

conosci qualke buon esorcista ?? ^_^

Earendil81 Profilo | Newbie

Non trovando nessun esorcista, sono riuscito a capire qual'era il problema con l'ODBC driver.
La stringa di connessione non è corretta. Nonostante utilizzi una stringa standard il sistema mi segnala sempre insoliti errori, che svaniscono quando invece di specificare il Driver ODBC Client Access utilizzo un DSN di sistema. il DSN, a quanto pare, parametrizza e specifica qualche informazione in più e toglie al sistema ogni dubbio su qualche misterioso parametro non inizializzato(?!?). Sarebbe bello riuscire a capire cosa manca alla stringa di connessione classica, ma se una cosa funziona non è necessario chiedersi il perchè funziona..^_^
Ora la domanda sorge spontanea... è possibile crearsi un DSN AUTOMATICAMENTE, settandolo da programma?? Nel caso dovessi distribuire un software che lo utilizzi posso includerlo in qualche modo nell'installazione.....??
ai posteri l'ardua sentenza...
ringrazio per l'attenzione...


Brainkiller Profilo | Guru

Si il file DSN puoi crearlo anche manualmente, è un file ditesto e puoi poi allegarlo al pacchetto di installazione.
Naturalmente nelle note del readme specificherai che è necessario aggiungerlo ai DSN locali.
Oppure puoi creare connessioni come si dice DNS-less cioè che non hanno bisogno di una entry DSN e quindi tutto viene specificato nella connection string.

ciao
david
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5