Hogyan lehet lekerdezni az IP cimet Delphiben?
  • PetruZ
    #66
    Ha jól értem, az első részben megpróbálsz sorban megnyitni fájlokat és ha nem sikerül, akkor a hibasfajl-nak true-nak kell lennie. Nos, ez esetben az első try blokk pont nem kivételkezelő, a finally-t cseréld le except-re. :)
    A második try..finally blokk emiatt nem is kell, az összméret számlálást emeld át az első try-be és akkor a hibasfajl kezelése is elhagyható. Pl. így:


    osszemeret:=0;
    for i:=0 to listbox2.items.count-1 do
    try
    assignfile(f, listbox.items[ i]); reset(f, 1); inc(osszmeret, filesize(f)); closefile(f);
    except
    // fájl megnyitás nem sikerült, ide jöhetnek mindenféle hibakezelő részek
    ...
    end;


    Jut eszembe: ha nem típusos fájlt nyitsz meg, a Reset()-nél kell a blokkméret is, ellenkező esetben az alapértelmezés 128 bájtos, így a FileSize() is azt adja vissza, hány 128 bájtos blokkból áll a fájl.