Šta je novo?

Sta mu raditi ...

sucur_87

Slavan
Učlanjen(a)
15.09.2005
Poruke
54
Poena
309
E ovako imam jedan problem sa win32 API-jem, dakle hocu da odradim otvaranje fajla, citanje iz istog i na kraju znaci zatvaranje.
Nasao sam primjer u MSDN za otvaranje koji ide ovako:
Kod:
hFile = CreateFile("text.txt",GENERIC_READ,FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
I ja sam to isto napisao, stim sto postoji i HANDLE hFile i njega sam napisao i fajl ovaj text.txt postoji, al' nece da ga otvori, pokusavao sam mnoge kombinacije, mogucih elemenata i pisanje itd, al' nista.
Stavio sam i (CloseHandle(hFile), al' naravno nemoze ni on kad ga nije ni otvorio. U cemu je problem.
PS. Program se kompajlira i pokrene, al' na akciju nece da ga otvori/zatvori/pise/cita iz njega.
 
Probaju da umesto FILE_SHARE_READ staviš 0. Ako neće, umesto "text.txt" stavi TEXT("text.txt"). Ako neće ni tako, onda iskoristi stari dobri fopen i fclose :)
 
Jos kad bi preneo i konkretnu gresku koju ti program javi, bilo bi super...
 
Nema greske, nego nista se nedesava, stavio sam provjeru (ako je ispravna preko if i rezultat -1(false), i vraca false tj. nije otvorio.
Jel' poterbna samo funkcija ReadFile i WriteFile za citanje/pisanje iz fajlova ili treba jos nesto uraditi ?
 
Poslednja izmena:
Pa pozovi GetLastError da bi dobio feedback od sistema sta se desilo.

Moze biti svasta, od sasvim banalnog (exe se ne startuje u istom diru gde je i text.txt pa treba koristiti apsolutni path do fajla ili barem pre otvaranja proveriti da li fajl postoji) do komplikovanog (korisnicka prava u tom diru, kompresija/enkripcija fajl sistema, itd).

Za citanje ti ne treba nista posebno - otvoris, procitas, zatvoris; kod upisa nije lose rucno uraditi flush buffera ukoliko fajl ne otvaras sa flagom no_buffering).
 
Nazad
Vrh Dno