[ MrNash @ 18.02.2015. 16:43 ] @
Pozdrav svima!
U pitanju je jedno "legacy" rješenje. VB6 kod radi sa MDB fajlom (Office 2000 format) pomoću DAO interfejsa.
Program otvori MDB fajl, izvršava neke SELECT, INSERT, UPDATE naredbe i zatvori fajl.
To sve fino funkcioniše ako je na kompjuteru instaliran Office 2000.

Postoji li neka caka (programcic, dll za registraciju) pa da taj VB6 kod (sa starom MDB verzijom) funkcioniše i na računaru
gdje je instaliran Office 2013 (bez Office-a 2000)?
Probao sam da MDB fajl konvertujem u noviju verziju ali tada VB6 program ne može da mu pristupi.

Ako ne onda će biti potrebno konvertovati MDB fajl u noviji format a VB6 kod (ne baš malo istog) ponovo napisati VB.NET-u.

[ izonic @ 18.02.2015. 17:12 ] @
Konekcija na bazu radi bez obzira dali postoji ofis na compu ili ne.
Samo je bitno da postoji dao tlb ili dll ovisno koju verziju dao si koristio.
Najbolje bi bilo da konvertujes bazu u access97.
To je moja preporuka.
[ MrNash @ 18.02.2015. 17:32 ] @
Dao tlb ili dll da bude u istom folderu kao i VB6 exe fajl?
VB6 kod trenutno vrati gresku cim se pozove DAO.OpenLocal(PutanjaNazivMDBa).
[ MrNash @ 18.02.2015. 17:41 ] @
Nisam siguran da li se koristi konekcija, MDB fajl se otvori pomocu putanju u fajl sistemu.
[ izonic @ 18.02.2015. 19:54 ] @
c:\Program Files\Common Files\Microsoft Shared\DAO\
Koristi se itekako.
Onda ja ne znam kako si ti to napravio.
Moguce da si koristio putanju direktno na kontrolama.
Onda imas problem sa instalaciom na drugi comp jer nisu putanje do baze iste.
Znaci trebas napraviti koneksiju i da ti se baza nalazi ispod putanje app.
znaci:
nekaputanjainstalacije/imeapp/
Ovo citas sa naredbom app.path te se odavde nadovezujes na putanju baze:
Primjer:
APP.PATH & "\MOJABAZA.mdb"
Znaci baza se nalazi gdje i app.
drugi primjer:
app.path & \baza\mojabaza.mdb"
Znaci nalazi se iza app u dir baza.
[ MrNash @ 18.02.2015. 20:13 ] @
Ko kaze da sam ja napravio aplikaciju? :-) To je od prje mog vremena.
Probacu sutra sa kopiranjem dll-ova i pravljenjem Access konekcije na compu sa Office-om 2013.
[ izonic @ 18.02.2015. 20:39 ] @
Pa imas li Vb app. ili samo exe.
[ MrNash @ 18.02.2015. 20:40 ] @
Da li je potrebno i registrovati DAO dll-ove na novoj masini ili ih samo
kopirati na navedenu putanju?
Mislim da su ti dll-ovi ukljuceni u reference VB6 projekta.

Imam VB6 kod (i zelju da izbjegnem njegovo mjenjanje).
[ izonic @ 18.02.2015. 21:13 ] @
Ne mislim da mijenjas nego pogledaj u referencama sta trebas pokupiti da bi radilo.
Treba regati svaki dll ako ga nema na masini.
[ MrNash @ 18.02.2015. 21:36 ] @
OK. Jos jednom: kopiranje i registrovanje dll-ova i pravljenje ODBC konekcije pa da vidim kakva je situacija.
[ MrNash @ 19.02.2015. 10:00 ] @
Proradilo je. U VB6 projektu sam uklonio referencu na "DAO 3.51 Object Library" i dodao referencu na "DAO 3.60 Object Library" pa napravio novi EXE.
Nisam morao da kopiram dll-ove na novi kompjuter (samo novi EXE), vec je postojao dao360.dll fajl na onoj putanji.

Takodje je bilo ipak potrebno konvertovati MDB fajl u noviji format. Nisam dodavao ODBC konekciju.

Hvala puno na pomoci.

[Ovu poruku je menjao MrNash dana 19.02.2015. u 11:29 GMT+1]