U
user1976
Hi everyone, I am using the CreateProcessAsUser function as specified in the
example "staring an interactive client process in C++" to create a new process.
I used the sample code given by microsoft at
http://support.microsoft.com/kb/165194/EN-US/
as guidance. However after creating new processes say about 50 times. I get the
error ERROR_NOT_ENOUGH_QUOTA by the function SetUserObjectSecurity in both
AddTheAceWindowStation and AddTheAceDesktop functions. The above link to the kb
mentions this error and refers to the following link
http://support.microsoft.com/kb/185292/EN-US/ which says that the aces should
be cleaned up for desktop and windowstation objects when the processes die.
It also says that if one cannot track when the process dies
If you cannot track when the process dies, there are several procedures that
you can use to remove any unnecessary ACEs. You can enumerate processes, read
the Logon Security Identifier (SID) or User SID from the process token, and
compare one of them to the ACEs stored in the DACL for the window station
and desktop objects.
In my case I cannot determine when the process dies. I am new to MFC and I need
some help. Can any one give me a code sample on how to achieve the above.
I am reallllyyy stuck here
Thanks a million in advance
Vijay
example "staring an interactive client process in C++" to create a new process.
I used the sample code given by microsoft at
http://support.microsoft.com/kb/165194/EN-US/
as guidance. However after creating new processes say about 50 times. I get the
error ERROR_NOT_ENOUGH_QUOTA by the function SetUserObjectSecurity in both
AddTheAceWindowStation and AddTheAceDesktop functions. The above link to the kb
mentions this error and refers to the following link
http://support.microsoft.com/kb/185292/EN-US/ which says that the aces should
be cleaned up for desktop and windowstation objects when the processes die.
It also says that if one cannot track when the process dies
If you cannot track when the process dies, there are several procedures that
you can use to remove any unnecessary ACEs. You can enumerate processes, read
the Logon Security Identifier (SID) or User SID from the process token, and
compare one of them to the ACEs stored in the DACL for the window station
and desktop objects.
In my case I cannot determine when the process dies. I am new to MFC and I need
some help. Can any one give me a code sample on how to achieve the above.
I am reallllyyy stuck here
Thanks a million in advance
Vijay