[ Príspevkov: 6 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 05.09.08
Prihlásený: 11.11.22
Príspevky: 69
Témy: 37 | 37
NapísalOffline : 04.10.2012 16:36 | pomoc pri CreateDir

Dobrý deň,
potreboval by som pomôcť pri mojom začiatočníckom probléme.Používam príkaz CreateDir a ak dám za paramater presne špecifikovaný adresár, nie je problém, ak idem cez premennú, problém nastane. Ako by som obišiel skutočnosť, aby v parametre nemusela byť konštanta.
Vďaka za pomoc, prikladám vzorový kód.


Kód:
procedure TForm1.Button1Click(Sender: TObject);
var
   New_dir : string;

begin
   New_dir := 'c:\jjj';

   if CreateDir('c:\jjj') then
      showmessage('vytvoril cez string')
   else
      showmessage('nevytvoril cez string');

   if CreateDir(New_dir) then
      showmessage('vytvoril cez variable:'+new_dir)
   else
      showmessage('nevytvoril cez variable:'+new_dir);

end;


Offline

Užívateľ
Užívateľ
pomoc pri CreateDir

Registrovaný: 02.12.06
Prihlásený: 26.04.26
Príspevky: 691
Témy: 35 | 35
Bydlisko: Rimavská So...
NapísalOffline : 04.10.2012 18:22 | pomoc pri CreateDir

neviem ako to funguje v delphi, ale ak ten súbor už existuje, tak by sa nemal vytvoriť
teda skús zakomentovať alebo odstrániť ten prvý if else prípadne pred vytváraním cez premennú priečinok zmazať


_________________
Math is the best!
Offline

Skúsený užívateľ
Skúsený užívateľ
pomoc pri CreateDir

Registrovaný: 11.01.09
Prihlásený: 25.04.26
Príspevky: 1399
Témy: 10 | 10
Bydlisko: Hrinova
NapísalOffline : 04.10.2012 18:57 | pomoc pri CreateDir

V prvom rade, podla dokumentacie, funkcia CreateDir vytvori zlozku v aktualnej zlozke. Ty ju ale vytvaras v zlozke C:\ Ono by to mozno aj vzalo, ale dalsia vec je, ze mozno nemas prava zapisovat do zlozky C: v danom uzivatelskom ucte ( mozes skusit spustit aplikaciu ako spravca, tak zistis, ci je chyba prave tu, ale ja si myslim, ze problem je to, co som spomenul prve ). Na vytvorenie zlozky niekde inde by som radsej pouzil funkciu ForceDirectories.
Dalej nespominas, aky to vlastne problem nastane. Nemozes skompilovat alebo je problem az po spusteni? Skusal som to prehnat fpc kompilerom a nemal som problem, skompilovalo to, cize ak mas problem s kompilaciou ( ze ti tam nechce zobrat premennu miesto konstanty ), skus toto:
Kód:
if CreateDir( PChar( New_dir ) ) then
    // ...


Ak je problem az za behu, daj si v ShowMessage vypisat volanie funkcie IntToStr( GetLastError ) a napis sem jej obsah.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 05.09.08
Prihlásený: 11.11.22
Príspevky: 69
Témy: 37 | 37
Napísal autor témyOffline : 04.10.2012 21:51 | pomoc pri CreateDir

Ďakujem za Váš čas,
problém vzniká počas behu aplikácie,
výsledok IntToStr( GetLastError ) sa rovná nule, v mne známych helpoch sa píše iba o návratovej hodnote, ale nie o príčine falsu. Nevytvoril ani adresár, ktorý neexistoval.


Offline

Skúsený užívateľ
Skúsený užívateľ
pomoc pri CreateDir

Registrovaný: 11.01.09
Prihlásený: 25.04.26
Príspevky: 1399
Témy: 10 | 10
Bydlisko: Hrinova
NapísalOffline : 05.10.2012 11:27 | pomoc pri CreateDir

Cize problem je az za behu? V tom pripade to je trocha cudne, ze toto funguje:
Kód:
CreateDir('c:\jjj');


ale toto uz nie:
Kód:
CreateDir( New_dir );


Ak si to ale skusal presne tak, ako mas napisane, tak to bude zrejme tak, ako spominal Jarrro - najprv prebehne kod CreateDir('c:\jjj') a potom nasledne CreateDir(New_dir), pricom tato zlozka uz vytvorena je, cize ti vrati false. Skus zmazat ten prvy CreateDir s konstantnou hodnotou.

// Co sa tyka funkcie GetLastError, len pre istotu pripomeniem, ze tu treba volat az po volani funkcie CreateDir, aby sa tam zobrazila chybova sprava, ktoru vyvolala tato funkcia ( ak vobec ). Ak si takto volal, potom v poriadku. Btw, skusil si aj miesto funkcie CreateDir volat funkciu FroceDirectories?


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 05.09.08
Prihlásený: 11.11.22
Príspevky: 69
Témy: 37 | 37
Napísal autor témyOffline : 05.10.2012 19:43 | pomoc pri CreateDir

Problém vznikol mojim nepochopením príkazu CreateDir, ktorý vytvára adresár, ale iba jednej úrovne, použitím príkazu ForceDirectories, ktorý vytvára celú cestu, sa celý problém vyriešil.
Vďaka.


 [ Príspevkov: 6 ] 


pomoc pri CreateDir



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Pomoc pri pomoc pri skladaní PC - od 1 500 do 1 800 Eur (rozlíšenie 1440p)

v PC zostavy

13

1098

28.09.2023 20:23

johny314

V tomto fóre nie sú ďalšie neprečítané témy.

pomoc pri c

v Backend

3

737

31.05.2009 11:28

ado21

V tomto fóre nie sú ďalšie neprečítané témy.

pomoc pri ICQ

v Sieťové programy

2

553

09.08.2007 12:56

palec20

V tomto fóre nie sú ďalšie neprečítané témy.

pomoc pri zostave

v PC zostavy

7

586

09.10.2007 21:11

mimkork

V tomto fóre nie sú ďalšie neprečítané témy.

pomoc pri grafike

v nVidia grafické karty

7

1213

04.01.2006 15:49

snake2

V tomto fóre nie sú ďalšie neprečítané témy.

Pomoc pri výbere

v Notebooky a netbooky

3

631

02.07.2012 8:10

uzivatel1986

V tomto fóre nie sú ďalšie neprečítané témy.

POMOC pri vybraní

v PC zostavy

14

809

01.11.2011 11:58

ricky1201

V tomto fóre nie sú ďalšie neprečítané témy.

pomoc pri vybere

[ Choď na stránku:Choď na stránku: 1, 2 ]

v Monitory, televízory a projektory

34

2170

21.01.2009 17:25

michal1313

V tomto fóre nie sú ďalšie neprečítané témy.

pomoc pri instalovanii

v Windows

3

458

14.08.2010 22:48

shiro

V tomto fóre nie sú ďalšie neprečítané témy.

pomoc pri výbere

v Notebooky a netbooky

2

545

16.12.2008 16:35

barborka16

V tomto fóre nie sú ďalšie neprečítané témy.

Pomoc pri kúpe

v Grafické karty

5

633

11.10.2012 13:19

bulbasaur

V tomto fóre nie sú ďalšie neprečítané témy.

pomoc pri vybere

v AMD grafické karty

12

779

05.03.2011 18:08

mEyz

V tomto fóre nie sú ďalšie neprečítané témy.

pomoc pri vybere

v Notebooky a netbooky

4

564

15.02.2011 5:43

cape

V tomto fóre nie sú ďalšie neprečítané témy.

Pomoc pri teplote

v Intel

18

1370

31.01.2009 12:42

Mettiu

V tomto fóre nie sú ďalšie neprečítané témy.

POMOC pri hladani

v Ostatné

3

604

28.11.2007 23:20

kibut

V tomto fóre nie sú ďalšie neprečítané témy.

Pomoc pri kúpe

v PC zostavy

10

799

11.02.2012 0:59

dark_globe



© 2005 - 2026 PCforum, edited by JanoF