VB.NET 2010! Path problem!

poruka: 7
|
čitano: 1.231
|
moderatori: XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
11 godina
neaktivan
offline
VB.NET 2010! Path problem!

Pozdrav svima,

 

početnik sam u VB.NET programiranju. Napravio sam windows aplikaciju sa access bazom podataka, i problem je kada hoću da je instaliram na drugom kompjuteru, piše da path nije dobar(ne može naći access bazu podataka). Na mom kompjuteru radi odlično. Kod mene relacija: C:\users\Admin\Desktop\StudentiEMP, a na drugom kompjuteru naravno bude drugačija lokacija. Znam da je problem u path, pa ako neko zna kako treba pravilno postaviti path(relativni path) da prilikom instalacije na drugi kompjuter aplikacija se automatski instalira sa bazom podataka. Gledao sam neke tutorijale ali svako piše drugačije.  U prilog stavljam kod iz app.config fajla. Hvala unaprijed na pomoći.

 

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <configSections>
    </configSections>
    <connectionStrings>
        <add name="StudentiEMP.My.MySettings.Baza_podatakaConnectionString"
            connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Admin\Desktop\StudentiEMP\Baza_podataka.accdb"
            providerName="System.Data.OleDb" />
    </connectionStrings>
    <startup>
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0,Profile=Client" />
    </startup>
</configuration>

 

 

 

 

 
0 0 hvala 0
16 godina
online
Re: VB.NET 2010! Path problem!

-ne hardkodirati path za radne fileove (pa ni za sve ostale, osim relativnog patha ili korištenjem sys-path varijabli). Dal ćeš to rješiti nekim 'configuratorom-setupom' u aplikaciji, cinfig.ini fileom, registryjem... svejdno. Ako to ne napraviš, tad moraš rekompilirati za svakog juzera specifičan path.

C64/TurboModul-OpenSourceProject.org.cn.部分作品为网上收集整理,供开源爱好者学习使用
11 godina
neaktivan
offline
Re: VB.NET 2010! Path problem!

Ok, možeš li mi reći kako onda konkretno da riješim ovaj problem?

16 godina
online
Re: VB.NET 2010! Path problem!
danyyy88 kaže...

Ok, možeš li mi reći kako onda konkretno da riješim ovaj problem?

 ? već ti je rečeno. npr u folderu app, kreiraš config.ini (običan txt file, starinski način), u njemu natipkaš path do bilo čega. Paljenjem app, učitaš podatke... naravno i bilo koji drugi način.

-sve mora negdje biti zapisano, na HDDu, u txtfileu, reg. .. sve je file, samo ga trebaš kao tebi razumljiv podatak snimiti i pročitati kad ti zatreba, npr ako neki password ili sama baza.

-drugi način, sve je u bazi na koju se spajaš.. tad ti inicijalno nazovimo loader app mora iz baze povuči te podatke i tek tad se zapravo pali 'prava' app. itd.

 

edit: da, relativna staza je u odnosu na samu app, njen folder i subfolderi ili sys varijable. Sve što se nalazi u sistemskom pathu se pretražuje ukoliko nije pronađeno u app folderu.

edit2 -za uvod, kreiraj neku app kja se bavi save-open (redosljed!) običnog txt filea u svom ili sub folderu.

C64/TurboModul-OpenSourceProject.org.cn.部分作品为网上收集整理,供开源爱好者学习使用
Poruka je uređivana zadnji put sri 26.3.2014 10:44 (ihush).
11 godina
neaktivan
offline
Re: VB.NET 2010! Path problem!

Malo mi je ovo nerazumljivo, jer kao što sam rekao početnik sam u vb.net-u. Mislio sam da je potrebno podesiti samo App.config file u samoj aplikaciji, znaci staviti neki relativni path koji će se automatski spajati spajati sa .exe i bazom, prilikom instalacije na svaki komp. Svakako hvala na pomoći.

13 godina
offline
VB.NET 2010! Path problem!

Proguglaj App.Path, tj ekvivalent na vb.net koliko vidim je "System.AppDomain.CurrentDomain.BaseDirectory()"

 

Ili stavis da ti u folderu gdje je exe napravi i folder gdje ce biti baza

ja
 
0 0 hvala 0
16 godina
online
Re: VB.NET 2010! Path problem!

-razlikuj termine relativni i apsolutni (path), razmišljaj o drugom PCu, koji ne mora biti win7-.. npr XP ili neki budući win9.. koji ne mora imati usera u users folderu uz permisione koji su također problem.

-korisnik na svom PCu-OSu u instalaciji bira gdje će instalirati app, ŠBB-KBB ako je na C:\ProgramFiles.. što ako je 32-ili-64Bit OS? .. što ako je instalirano na D:, ->Z: .. tad takvu stazu moraš negdje imati snimljenu i/ili po potrebi je izmijeniti. Sama App ne mora biti na istom disku ili PCu s bazom na koju se spaja, što ako je baza na mreži..  ili nekom linux file serveru, dal se UNC piše s \\ ili s \\\ itd itd itd..

-može i preko npr SQL servera, ODBCa .. tad se na serveru definira baza, korisnik od servera dobija pristup, uopće ne mora znati gdje je baza. Connect string. itd. itd.

-zato, moraš ići redom, ne preskakati odnosno, imaš app koja radi na tvom PCu, ali ne na drugom. Za početak je najbenigniji neki config.ini file, dok registry 'diraj' tek kasnije. Potraži tutove oko tog.. nije teško.

 

edit:

-evo primjer korištenja ini filea.. prilagodi svojim potrebama, trebalo bi biti dovoljno jasno ili upotrebljivo za tvoje potrebe.

- vb ..

itd. itd..

C64/TurboModul-OpenSourceProject.org.cn.部分作品为网上收集整理,供开源爱好者学习使用
Poruka je uređivana zadnji put sri 26.3.2014 15:57 (ihush).
1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice