ZwOpenSection füllt den Handle nicht



  • HANDLE sectH
    
    OBJECT_ATTRIBUTES objATT;
    objATT.Length=sizeof(OBJECT_ATTRIBUTES);
    objATT.ObjectName=&uniName; 
    objATT.Attributes=OBJ_CASE_INSENSITIVE | OBJ_KERNEL_HANDLE;
    objATT.RootDirectory=NULL;
    objATT.SecurityDescriptor=NULL;
    objATT.SecurityQualityOfService=NULL;
    
    ZwOpenSection(&sectH,GENERIC_READ,&objATT)
    

    das Problem ist der sectH bleibt auf 0x00000 aber es gibt einen NTSTATUS 0 zurück
    irgendwelche ideen? ich ruf die ZwOpenSection direkt aus der ntdll.dll auf!

    OS: windows vista



  • komisch jez wo ich
    PHANDLE sectH;

    definiert habe wird der handle plötzlich gefüllt

    wo liegt der unterschied zwischen

    HANDLE sectH; 
    
    ZwOpenSection(&sectH
    

    und bei

    PHANDLE sectH;
    ZwOpenSection(sectH
    

    ``????


  • Mod

    PHANDLE ist ein Zeiger. Dieser Zeiger zeigt mal auf gar nicths, wenn Du ihn nicht initialisierst. Dein Programm kann sogar unter Umständen abstürzen weil Du einen nicht initialisierten Zeiger verwendest und diesen Adresse zum Schreiben an eine andere Applikation übergibst.
    HANDLE definiert ein Handleund Du hast mit dem Adressoperator & dann diese gültige Adresse übergeben.

    Beschäftige Dich nochmal mit C/C++ Grundlagen.


Anmelden zum Antworten