[ Blue82 @ 04.06.2011. 14:31 ] @
Juce sam prvi put napravio program u VB.NET-u koji nije radio na mom racunaru (tj. koji sam hteo da dam nekome), i kada sam sve postavio na njegovom racunaru izbacio je gresku (Nije mogao da se konektuje na accessovu bacu). Ok, kako on nije imao instaliran Office, kontam fali mu Provider za Access i skimen ga i instaliram ali opet izbacuje gresku. Na zalost nisam zapamtio sta je izbacio jer sam slucajno dosao do resenja problema a to je da na tom racunaru instaliram VB.Express da vidim sta se desava i opet isti problem. Nije mogao da se konektuje na bazu do trenutka dok isti taj program nisam pokrenuo u u samom VB.NET-u. Kako sam ga pokrenuo tako je program proradio i u debug-u i u samoj exe verziji.

Sad... zao mi je sto nisam zapamtio koju gresku je izbacio ali pretpostavljam da cete znati o cemu se radi, pa ako ne bude islo isprovociracu je ponovo pa prepisati. Znaci ako neki program pravim u NET-u na tom racunaru radi sve ok i nista nisam mogao primetiti jer tako je ok. Ali ako isti taj program pokrenem na racunaru u kome nije nikada bio pokrenut sorce, vec samo exe verzija tu ne radi.

Sta ubaciti u setup?
[ wex-alpha @ 04.06.2011. 20:44 ] @
1. Verziju frameworka u kojoj je radjen.
2. Sve externe DLL koje koristis.
3. Sve fajlove koje tvoja aplikacija koristi.

Ako su ti sva slucaja ispunjena... mora da radi.


[ Blue82 @ 05.06.2011. 10:30 ] @
Probacu u ponedeljek, izgleda da sam ispustio jedan dll.
[ Blue82 @ 06.06.2011. 13:08 ] @
Ipak nisam uspeo, još nešto mi definitivno fali.
Evo izveštaja o grešci.

Update:
Ja sumnjam da je to u vezi sa Microsoft ActiveX Data Objects 2.8 Library, pošto njega koristim. E sad ne znam koji je to dll? Ono što mi je on sam izvadio je Interop.ADODB.dll ali nisam siguran da li je to isto što i ctiveX Data Objects 2.8 Library.



[Ovu poruku je menjao Blue82 dana 06.06.2011. u 17:58 GMT+1]
[ mmix @ 06.06.2011. 13:57 ] @
A zasto koristis ADODB?

.NET ima native support koji je mnogo brzi i bolje prilagodjen .NETu
[ Blue82 @ 06.06.2011. 14:17 ] @
Jbg ja nisam profesionalac i ne mogu baš sve da pratim kao i vi. Pogledaću kako to radi ako uspem da skontam ali ne bih rado menjao čitavu sintaksu, možda za ubuduće ako nije komplikovano.

Fazon je što čim startujem program iz VB.NET-a istog trenutka to "nešto" više ne fali i tada mogu da pokrenem i exe bez problema. Znači negde nešto unese, verovatno fali samo jedan fajl.

UPDATE: Evo sad sam pročitao šta si napisao, ne znam ni šta ti je to. Može konkretnije da mogu da pogledam?
[ Blue82 @ 06.06.2011. 19:00 ] @
Jel to mozda ovo o cemu pricas?
Code (vbnet):


        Dim Cn As OleDbConnection
        Dim DBcomando As OleDbCommand
        Dim rsRecordset As OleDbDataReader
        Dim result

        Cn = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; Data Source=c:\Baza.accdb;Persist Security Info=False;")

        Cn.Open()

        DBcomando = New OleDbCommand("SELECT * FROM tblFajlovi", Cn)

        rsRecordset = DBcomando.ExecuteReader()
        If rsRecordset.Read Then
            result = rsRecordset.Item("ImeCDa")
            Cn.Close()
            rsRecordset.Close()
            MsgBox(result)
        End If
 





[Ovu poruku je menjao Blue82 dana 06.06.2011. u 20:20 GMT+1]
[ AMD guy @ 06.06.2011. 22:50 ] @
Jel baza na drugom racunaru nalazi na
Data Source=c:\Baza.accdb
[ Blue82 @ 06.06.2011. 23:00 ] @
Da nalazi se tu, nisam pogresio u tom delu sintakse jer kao sto rekoh kada isti program pokrenem i VB-u on radi. POsle prvog pokretanja u VB-u sve radi bez greske i u debug modu i kao exe ali dok taj prvi put ne pokrenem iz VB.NET-a na novom racunaru, izbacuje gore pomenutu gresku.
[ Shadowed @ 06.06.2011. 23:47 ] @
Da nije neki problem sa 32/64 bita?
[ Blue82 @ 07.06.2011. 05:28 ] @
Iden na BUILD i kada odradi pronadjem exe u obj\x86\debug\ ili release, zadim ima ih jos u bin\debug ili release. Odatle pokusam da startujem exe koji se tu nalaze.
[ wex-alpha @ 07.06.2011. 07:31 ] @
Citat:
Blue82: Iden na BUILD i kada odradi pronadjem exe u obj\x86\debug\ ili release, zadim ima ih jos u bin\debug ili release. Odatle pokusam da startujem exe koji se tu nalaze.


Znaci:
1. exe nigdje ne radi (target i host masina).
2. Kada pokrenes solution unutar VShosta, onda radi (target i host masina)
3. Nakon pokretanja solutiona, standalone exe radi (target i host masina)

Ispravno?
[ AMD guy @ 07.06.2011. 09:52 ] @
@Blue82
Jel si probao sa ClickOnce
[ mmix @ 07.06.2011. 11:01 ] @
Citat:
Blue82: Jel to mozda ovo o cemu pricas?


Da, pride sto ako koristis .NET treba da izbegavas access, cak i ovaj novi. Postoji nesto sto se zove SLQ Server compact koji je integrisan u .NET runtime i koji ne zahteva nikakve drajvere i pride podrzava sve data funkcionalnosti accessa (cak i dosta pride). Pretpostavljam da si dosao iz VB6 sveta pa si se zato zadrzao na adodb, ali veruj mi da ce ti se isplatiti da investiras vreme da naucis nove tehnologije jer ti to posle omogucava lakse programiranje preko linqa, EF-a, itd. ADODB je dead end.

Za vise detalja o SQL CE vidi ove tutoriale npr -> http://msdn.microsoft.com/en-us/sqlserver/bb895908






[ Blue82 @ 07.06.2011. 22:45 ] @
Danas me nije bilo ali tu sam ja.

@wex-alpha dobro si razumeo.
@MMX pogledacu ovo mada nije mi bas najjasnije jer SQL server bukvalno SQL server tj ona aplikacija koju treba instalirati na racunaru na kome program treba da radi, koja niti je mala niti je upotrebljiva za nekog ko nema nikakvih dodirnih tacaka sa programiranjem a meni treba nesto kompaktno i prenosivo. Ali verovatno gresim pa cu pogledati sta si postovao.
[ Shadowed @ 07.06.2011. 23:15 ] @
Imas SQL Server u vise varijanti. U vecini njih jeste tako - moras instalirati server kao zasebnu aplikaciju koja mora biti aktivna da bi se server koristio.
Medjutim, SQL CE nije ta situacija vec se on izvrsava u okviru tvoj aplikacije. Upravo je namenjen za to sto ti treba (i zove se Compact Edition)
[ AMD guy @ 08.06.2011. 00:38 ] @
@mmix ili shadowed Jel bi preporucili distribuciju aplikacije preko clickonce?
[ Shadowed @ 08.06.2011. 07:36 ] @
Nisam koristio, ne bih mogao ni da preporucim ni da anti-preporucim :)
[ Blue82 @ 08.06.2011. 17:15 ] @
Auuuu.. pazi, simpaticno je i deluje ok. Ali sintaksa mi je malo pogubitis i moram da priznam da mi deluje malo zamrseno jer sad mi treba vise prog linija u odnosu na ADODB da izvrsim istu stvar, ili ja nalecem na neke napredne primere. Moze li neko da pomogne ako ima vremena za kratak tutorial kako se rade sledece stvari:

1. ADD

nekad je bilo:
Code (vbnet):

rsRecordSet.AddNew()
rsRecordset.FIeld("Ime").Value="Milan"
rsRecordset.FIeld("Prezime").Value="Peric"
rsRecordset.Update()
 


2. Citanje

Code (vbnet):

        rsRecordSet.Open("SELECT * FROM Tabela1 ", Cn, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockOptimistic)
      rsRecordSet.MoveFirst()

        Do Until rsRecordSet.EOF
            If rsRecordSet.EOF Then Exit Do
            MsgBox("Citam zapis - " & rsRecordSet.Fields("Ime").Value)
            rsRecordSet.MoveNext()
        Loop
        rsRecordSet.Close()
 


A sada?
[ mmix @ 08.06.2011. 19:38 ] @
Mislim da ti je najbolje da pogledas ove clanke:

http://msdn.microsoft.com/en-us/magazine/cc163954.aspx
http://msdn.microsoft.com/en-us/magazine/cc163940.aspx

Videces da ima dosta vise koda da sve proradi, ali ces kasnije videti i da vecinu tog koda uopste ne mors da kucas, tj mozes da zavrsis drag&drop akcijama u dataset dizajneru.
[ Blue82 @ 09.06.2011. 21:48 ] @
Na kraju sam uspeo napraviti kompilaciju ovog tvog i mog primera i radi :)
U svako slucaju vredelo je truda i pomak je ka napred, ako ni za sta onda u mom razvoju. Hvala!

E sad samo jedno pitanje, kako se pokazao saj SQL CE? DA li je on los kada bi mu pristupalo vise usera istovremeno kao kod Accessa, pa je i dalje za takve stvari potrebam SQL Server ili je SQL CE mnogo bolje uradjen? Kakva su iskustva?
[ mmix @ 10.06.2011. 09:06 ] @
Ja sam ga intenzivno koristio u single i multiple connections scenarijima kao zamenu za access i to sljaka vise nego odlicno. NIsam probao u multi-process scenarijima ali ne vidim ni razlog da ne uspe, limit je valjda 256 konkurentnih konekcija u jednom trenutku.


[ Deep|Blue @ 24.06.2011. 11:01 ] @
@Blue82
Malo zakasneli odgovor, ali možda ti bude od koristi

Citat:
Blue82: Ipak nisam uspeo, još nešto mi definitivno fali.
Evo izveštaja o grešci.

Update:
Ja sumnjam da je to u vezi sa Microsoft ActiveX Data Objects 2.8 Library, pošto njega koristim. E sad ne znam koji je to dll? Ono što mi je on sam izvadio je Interop.ADODB.dll ali nisam siguran da li je to isto što i ctiveX Data Objects 2.8 Library.


Microsoft ActiveX Data Objects se ne distribuira kroz dll fajl već se instalira kao deo paketa MDAC(Microsoft Data Access Components).
Zadnja verzija je dotupna na adresi MDAC 2.8 SP1

Inače od Viste Microsoft je promenio politiku malo i preimenowao je MDAC u WDAC koji više ne može da se redistribuira već ide kao integralni deo WIn-a.