驴Que debo hacer para que un programa que no se est谩 ejecutando como administrador pida la autorizaci贸n para poder modificar el registro de windows?
Saludos
Quique
Quique
驴Que debo hacer para que un programa que no se est谩 ejecutando como administrador pida la autorizaci贸n para poder modificar el registro de windows?
驴entonces no se puede con fivewin?
BOOL IsUserAdmin(VOID)
/*++
Routine Description: This routine returns TRUE if the caller's
process is a member of the Administrators local group. Caller is NOT
expected to be impersonating anyone and is expected to be able to
open its own process and process token.
Arguments: None.
Return Value:
TRUE - Caller has Administrators local group.
FALSE - Caller does not have Administrators local group. --
*/
{
BOOL b;
SID_IDENTIFIER_AUTHORITY NtAuthority = SECURITY_NT_AUTHORITY;
PSID AdministratorsGroup;
b = AllocateAndInitializeSid(
&NtAuthority,
2,
SECURITY_BUILTIN_DOMAIN_RID,
DOMAIN_ALIAS_RID_ADMINS,
0, 0, 0, 0, 0, 0,
&AdministratorsGroup);
if(b)
{
if (!CheckTokenMembership( NULL, AdministratorsGroup, &b))
{
b = FALSE;
}
FreeSid(AdministratorsGroup);
}
return(b);
}//BOOL IsUserAdmin(VOID)
HB_FUNC( IsUserAdmin )
/*++
Routine Description: This routine returns TRUE if the caller's
process is a member of the Administrators local group. Caller is NOT
expected to be impersonating anyone and is expected to be able to
open its own process and process token.
Arguments: None.
Return Value:
TRUE - Caller has Administrators local group.
FALSE - Caller does not have Administrators local group. --
*/
{
BOOL b;
SID_IDENTIFIER_AUTHORITY NtAuthority = SECURITY_NT_AUTHORITY;
PSID AdministratorsGroup;
b = AllocateAndInitializeSid(
&NtAuthority,
2,
SECURITY_BUILTIN_DOMAIN_RID,
DOMAIN_ALIAS_RID_ADMINS,
0, 0, 0, 0, 0, 0,
&AdministratorsGroup);
if(b)
{
if (!CheckTokenMembership( NULL, AdministratorsGroup, &b))
{
b = FALSE;
}
FreeSid(AdministratorsGroup);
}
hb_retl( b );
return(b);
}Warning W8061 ..\\fuentes\\main.prg 583: Initialization is only partially bracketed in function HB_FUN_IsUserAdmin
Warning W8081 ..\\fuentes\\main.prg 602: void functions may not return a value in function HB_FUN_IsUserAdmin
Error: Unresolved external '_HB_FUN_ISUSERADMIN' referenced from D:\QUIQUESOFT\IDE\.HBMK\WIN\BCC\MAIN.OBJ