[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/