[ apex @ 19.03.2005. 12:03 ] @
Projekti koje sam radio na jednom racunaru (i rade), nerade na drugom.
Napomena: isti OS, isti instalacioni cd delphi7...cak i isti hard:).......
Neznam sta je u pitanju pomagajte.
[ apex @ 19.03.2005. 12:47 ] @
E sad ko mister bin da odgovorim sam sebi na pitanje: jeste sve isto osim PUTANJE nekih fajlova koje prog. koristi!!!!!

E sad nastavak pitanja posto mi i dalje nije jasno kako da "sredim putanje" da mi program radi kada ga jednog dana budem stavio na cd ili promenio mesto(putanju) nekih fajlova.
[ sasas @ 19.03.2005. 13:48 ] @
Možda da bilo pametno da fajlove koje program koristi staviš u foldere unutar foldera sa tvojim exe fajlom. To je pametna praxa nevezano za tvoj problem, jer je lakše održavati program koji nije razbacan kojekuda po diskovima, a i instalacija je lakša.

A putanje onda možeš raditi relativno. Recimo da imaš ini fajl "settings.ini" koji se nalazi u istom folderu kao program. Njegovu relativnu putanju (u odnosu na folder s aplikacijom) dobijaš ovako:

Code:

sPath := IncludeTrailingPathDelimiter(ExtractFilePath(Application.ExeName)) + 'settings.ini';

ili 

sPath := IncludeTrailingPathDelimiter(ExtractFilePath(ParamStr(0)) + 'settings.ini';


ss.
[ apex @ 20.03.2005. 22:29 ] @
Hvala !!!!!!!!
[ Nemanja Avramović @ 21.03.2005. 15:39 ] @
ej, sta znaci:
IncludeTrailingPathDelimiter ???

ja sam do sad koristio samo ExtractFilePath... i sve radi :D
[ IgLo @ 21.03.2005. 15:54 ] @
Znaci da ubaci "\" na kraj stringa ako ne postoji, a ako postoji ne uradi nista, samo vrati prosledjeni string. U ovom slucaju je nepotrebno jer ExtractFilePath (Application.ExeName) uvek vraca putanju sa "\" na kraju
[ sasas @ 21.03.2005. 20:04 ] @
U ovom slucaju nepotrebno, ali je jako dobra praksa (imho) naviknuti se da koristiš tu funkciju. Ima funkcija koje u nekim situacijama vraća ime foldera bez '\' na kraju (sad mi pada na pamet winAPI funkcija GetWindowsDirectory, koja vaća C:\ ako si na rootu instalirao windowse, ili npr. c:\windows - bez '\' na kraju).

Da, znam da je primer extreman :) ali greške tog tipa je do zla boga teško debagovati (kod tebe radi sve ok, kod kupca se program raspada).

ss.
[ IgLo @ 21.03.2005. 23:20 ] @
Citat:
sasas: U ovom slucaju nepotrebno, ali je jako dobra praksa (imho) naviknuti se da koristiš tu funkciju.

Nisam ni rekao da nije Naprotiva i ja uvek radim ovako jer ne zelim da razmisljam sta vraca sa BackSlash-om, a sta ne. S tim sto sam napravio svoju funkciju (AddBS),.. dok ne nakucam ono "IncludeTrailingPathDelimiter" prodje me volja za programiranjem
[ sasas @ 21.03.2005. 23:41 ] @
Citat:
...dok ne nakucam ono "IncludeTrailingPathDelimiter" prodje me volja za programiranjem :)...


:)

stvarno najnezgrapnije ime funkcije u celom delphiju (dok ne pogledaš moj kood :)

ss.
[ Srki_82 @ 21.03.2005. 23:53 ] @
Citat:
sasas

stvarno najnezgrapnije ime funkcije u celom delphiju (dok ne pogledaš moj kood

ss.


Hihih... ja sam imao naviku da pisem self desc. func. names Znaci promeni tex dugmeta sa next na finish ako je korisnik dosao do kraja wizzarda... funkcija koja to radi se zove: ChangeButtonTextToFinishIfWizzardEnd
Stvarno genijalno, zar ne? Ko moze da se izgubi u kodu kad imena funkcije tacno kazu sta rade
[ Rapaic Rajko @ 22.03.2005. 09:52 ] @
Dugacka (deskriptivna) imena funkcija su ODLICNA praksa; ne zaboravite da sutra i neko drugi treba da se snadje u vasem kodu. A inace, pa koristite valjda 'code insight'; kucas 3-4 slova pa (Ctrl+Space)...i da vidis cuda. Napomena: ako vam iz nekog razloga na nekom mestu 'code insight' ne radi, znaci da imate gresku negde u kodu iznad...zgodna stvar.

Rajko