[pso] ZwOpenFile : si eu am probleme..
Mugurel Ionut Andreica
pso@cursuri.cs.pub.ro
Sun, 1 May 2005 06:08:16 -0700 (PDT)
--- Razvan Hobeanu <mindphobia@yahoo.com> wrote:
> Exemplu de folosire:
>
> RtlInitUnicodeString(&UnicodeName,
> L"\\??\\C:\\File0");
>
> InitializeObjectAttributes (
> &ObjectAttributes,
> &UnicodeName,
> OBJ_CASE_INSENSITIVE,
> NULL,
> NULL );
>
> Status = ZwOpenFile(&FileHandle,
> GENERIC_READ,
> &ObjectAttributes,
> &IoStatus,
> FILE_SHARE_READ |
> FILE_SHARE_WRITE,
> 0);
>
Multumesc pt exemplu. Cam asa faceam si eu.. Am
gasit care era problema la mine. Dupa
"InitializeObjectAttributes" si inainte de
"ZwOpenFile" faceam
"RtlFreeUnicodeString(&UnicodeName)" (caci m-am gandit
ca, la "InitializeObjectAttributes" este copiat
string-ul Unicode undeva si dupa initializare nu voi
mai avea nevoie de el). Se pare, insa, ca string-ul
Unicode este doar referit din OBJECT_ATTRIBUTES, deci
ZwOpenFile depinde (indirect) de string-ul Unicode.. [
mie mi se pare asta destul de dubios.. caci as fi
putut sa fac initializarea obiectului undeva si sa il
folosesc in alta parte.. cand string-ul Unicode nu mai
este valid.. dar.. asta e..]
Cat despre partea cu STATUS_ACCESS_DENIED (a scris
cineva un email ca ZwOpenFile returneaza
STATUS_ACCESS_DENIED), incearca sa pui in test 0777 la
open.. (acolo unde se creeaza "C:\filex")
__________________________________
Do you Yahoo!?
Yahoo! Small Business - Try our new resources site!
http://smallbusiness.yahoo.com/resources/