flyingfish
Messages postés
41
Date d'inscription
jeudi 19 février 2004
Statut
Membre
Dernière intervention
4 août 2006
19 avril 2005 à 17:00
J'ai déjà réussi à affichier le propriétaire d'un objet !
Demain je m'attaque au changement de propriétaire
Merci déjà pour l'aide !
**********************************************************************
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <stdlib.h>
#include <stdio.h>
CHAR buf[1000];
DWORD dw ;
LPSTR file = "Le_Chemin_Complet_de_mon_fichier"; (ex : c:\temp\lenomdudoc.XLS)
DWORD ssd = 0;
PSECURITY_DESCRIPTOR psd = NULL;
PSID psid = NULL;
BOOL pFlag = FALSE;
DWORD saccount = 0;
LPSTR account = NULL;
DWORD sdomain = 0;
LPSTR domain = NULL;
SID_NAME_USE snu;
GetFileSecurity(file, OWNER_SECURITY_INFORMATION, NULL, 0, &ssd);
psd = GlobalAlloc(GMEM_FIXED, ssd);
GetFileSecurity(file, OWNER_SECURITY_INFORMATION, psd, ssd, &ssd);
GetSecurityDescriptorOwner(psd, &psid, &pFlag);
LookupAccountSid(NULL, psid, account, &saccount, domain, &sdomain, &snu);
account = (LPSTR)GlobalAlloc(GMEM_FIXED, saccount);
domain = (LPSTR)GlobalAlloc(GMEM_FIXED, sdomain);
LookupAccountSid(NULL, psid, account, &saccount, domain, &sdomain, &snu);
sprintf(buf,"File : [%s]\n", (LPCTSTR)&(1:).GetText());
AfxMessageBox(buf);
sprintf(buf,"Owner : [%s]\n", account);
AfxMessageBox(buf);
sprintf(buf,"Domain : [%s]\n", domain);
AfxMessageBox(buf);