Newsgroup: it.comp.lang.visual-basic
Titolo: [?]ARCHIVIO MDB

Diificoltà del momento.
All'improvviso il VB6 non riconosce gli archivi MDB di Access.
Pongo la domanda:
Gli archivi MDB di Access 2000 sono compatibili con il VB6?
Se non sono compatibili come posso ovviare all'inconveniente?
Grazie a tutti,
Tommaso

 ha scritto nel messaggio
news:FPl_6.5927$363.2...@news.infostrada.it...

penso tu debba controllare la versione MDAC che hai installato, credo che
l'ultima supporti il motore per Access2000...controlla sul sito M$.
ciao

 wrote in message
FPl_6.5927$363.2...@news.infostrada.it...


 ha scritto nel messaggio
news:w8o_6.416$w35....@news.infostrada.it...


 Se non sono compatibili come posso ovviare all'inconveniente?
se usi DAO non puoi usare più la versione 3.51, devi utilizzare la 3.6
che viene installata col SP4 (o col SP5)
Ciao
Faber

 dell'Access poichè il pacchetto sarebbe stato molto grande.
cosa intendi con "il driver dell'access" ?
cioe' non hai messo il motore dao ? e gira lo stesso ?


dunque, i miei vb6sp5/access97/dao3.51 girano abbastanza tranquillamente
nonostante sui miei pc ci sia anche access 2000.
distribuendoli, il rischio e' che un utente possa aprirli con a2k e
convertirli. quindi li proteggi con pass e/o avvisi gli utenti che se li
aprono non col tuo programma affari loro, tu non ne rispondi. se il tuo
prg non va piu', se con a2k riesci ad aprire l'archivio si puo' supporre
sia stato aperto e convertito (alla religione ms: aggiornate,
aggiornate, aggiornate).
ho provato adesso a fare un nuovo vbp, mettere come riferimento dao3.6,
e il normale datacontrol un mdb 2000 lo vede bene.
altro vbp, riferimento ado 2.5, e continua a vedere l'mdb2k.
visual manager invece, come mi sembrava di ricordare da vecchi post,
continua a non vederlo. da me sta in
C:\Programmi\microsoft visual
studio\msdn98\98vsa\1040\samples\vb98\visdata
(giusto per trovarlo subito).
sarebbe strano ci riuscisse, ad aprire un mdb2k:
visdata.bas:
.ConnectionString = "PROVIDER=Microsoft.Jet.OLEDB.3.51;Data Source=" &
gsDBName
prob ti basta aggiornare questa e altre stringhe simili e ricompilare.
pero' non capisco bene cosa te ne fai in un prg da dare in giro.
sulle intenzioni di ms non ci farei molto conto. mi sembra qualcuno
abbia detto che il nuovo access e' compatibile -- d'altronde xp non e'
"l'applicativo per ufficio piu' compatibile mai apparso", come dice ms ?
<g> sugli altri db, gratuiti o no -- msde, interbase, mysql, ecc. -- se
ne e' discusso allo spasimo. se cerchi in outlook questi nomi, trovi
parecchi post. opinione personale: se vuoi qualcosa non soggetto a mode,
procura ai tuoi utenti una biro e alcuni quaderni a quadretti. magari
quelli per ragazzine con le chiavette, che puoi impostare a primarykeys.
mi raccomando l'integrita' referenziale: se uno strappa una pagina,
tutte le pagine collegate negli altri quaderni ---> puff ! --- poi dopo
un anno gli vendi l'upgrade "quaderno uso contabilita', con fincature"
:)) (*)
scherzi a parte, ne' da ms ne' da altri credo tu possa aspettarti
supporto perenne alle tue applicazioni. da altri un po' di piu', forse,
ma non metterci la mano sul fuoco.
in sostanza, io proverei a lasciare il tuo prg cosi' com'e' (tutt'al
piu' inserendo i rif dao3.6/jet4) ma facendo un pacchetto di
installazione _completo_, (cosa vuol dire e' troppo grande ? dev'essere
ditribuito via web ? se e' un dbms, su un floppy non ci sta, devi cmq
usarne parecchi o un cd...). se lo usano normalmente, dovrebbe bastare.
nb il "dovrebbe". no responsibilities whatsoever :)
magari fai qualche prova. potresti anche scoprire che se su un pc target
c'e' delphi il tuo vb non parte :)
ciao, a.
(*) lo svantaggio di questa soluzione e' dato dal backup: devi usare hw
xerox o compatibile.

Ciao Pal,
Se vuoi, potresti farmi un favore:
Ti invio un file archivio che si apre con access2000
Vedi se riesci ad aprirlo con Visua Data Manager di VB6
Se mi dai il tuo indirizzo te lo invio.
Ti saluto

 ha scritto

ciao tommaso
l'indirizzo e'
andrea....@tin.it
ma credo sia inutile, ho provato stamattina.
anche con sp5 installato, come ti dicevo, visdata apre solo gli mdb97.
bisognerebbe -- *forse*: non ho mai provato -- modificare la stringa che
citavo nel vbp di visdata in
ConnectionString =
"PROVIDER=Microsoft.Jet.OLEDB.>>>>>>>>>>4.0<<<<<<<<<<<;Data Source="
e ricompilare.
pero', appunto, non so quanto possa servirti tutto cio'.
dall'altro tuo post comincio a capire la situazione.
cmq, tralasciando visdata, se i bravi del ng -- ce ne sono parecchi che
ne sanno ben piu' di me -- non mi correggono, al momento ci sono tre
modi per accedere a un db da vb:
-- rdo, remote data objects se non sbaglio. ne so zero, ma credo sia in
dismissione.
-- dao, data access objects. metodo che era usuale fino a poco fa,
specie lavorando in locale su un mdb con mono- o mini-utenza.
-- ado, credo activex data objects. vigliacco se mi ricordo mai gli
acronimi. benedetti informatici. ti dovrebbe consentire di accedere
(access, eheheh) a +- qualunque db, nell'idea ms.
so che e' una semplificazione, ma diciamo che vb5 di default usava dao.
vb6 e' molto piu' ado-oriented.
io intanto proverei la mossa che ti ho detto, *con una precisazione*:
le cose che hai previsto si possano fare da access, falle fare
dall'interno del tuo programma. elimina qualunque commistione. anche
perche' un conto e' se le modifiche le fa chi ha in mente la situazione,
un conto se un utente comincia a muoversi a caso.
regola di fondo: in un prg fatto bene l'utente manco dovrebbe sapere
come sta memorizzando i suoi dati.
io i doc di word non cerco di aprirli con notepad. l'ho fatto una volta
con edit del dos su alcuni doc word4, aggiungendo 3 byte in ognuno. non
ne andava piu' uno...
detto questo, crea col setup wizard di vb un pacchetto completo di
setup. il tuo prg dovrebbe vivere di vita autonoma. io lo faccio
abbastanza spesso, per testare i miei prg, sulle macchine qui di fianco,
che hanno win98 / nt4 / 2000, offcie 2000 -- e non ho avuto problemi.
se pero' con access2000 apro un mdb97, e' certo che ci saranno casini.
non li risolvi usando access2000 direttamente. se chi ha il 97 prova ad
aprire il db, gli arriva "formato non riconosciuto".
l'unica e' che scegli tu quale formato preferisci (io sto ancora sul 97)
e l'mdb lo fai usare *solo* al tuo programma.
cmq, magari posta qualche linea di codice in cui usi il db e le tabelle,
cosi' capiamo meglio di cosa stiamo parlando, e magari anche i bravi
possono dirti qualcosa.
spero di esserti stato utile.
ciao, a.

 questo purtroppo , mi sembra che non si può fare con l'Access.
si puo'.
menu' strumenti | utilita' db | converti | alla versione precedente.
ho provato con l'mdb2000 fatto stamattina e access97 riconosce quello
convertito.
pero' salta fuori un msgbox "codice convertito alla versione 97. per
migliorare le prestazioni fare quanto segue ecc. ecc."
resto della mia idea: tutte le opzioni che ti vengono in mente, falle
fare al tuo programma. non fare arrivare gli utenti all'mdb con access.
ciao, a.