Bonjour,
J'aimerai faire un fichier de Log que personne ne puisse éditer. Pour cela sur un pc du domaine j'ai affecter les droits en FILE_APPEND_DATA, puis un petit programme tente d'ajouter des données dessus. Seulement j'ai une erreur "Acces is denied."
Et le code du programme
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 cacls r:\file.txt r:\file.txt DOMAIN\myuser:(special access:) READ_CONTROL SYNCHRONIZE FILE_GENERIC_READ FILE_GENERIC_EXECUTE FILE_READ_DATA FILE_APPEND_DATA FILE_READ_EA FILE_EXECUTE FILE_READ_ATTRIBUTES BUILTIN\Administrators:F NT AUTHORITY\SYSTEM:F DOMAIN\other_user:F BUILTIN\Users:R
La fonction CreateFile echoue et renvoie 5 : Access is denied.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 HANDLE hFile ; DWORD written ; hFile = CreateFile( "r:\\file.txt", FILE_APPEND_DATA, //En mode Append FILE_SHARE_WRITE, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0); if ( hFile == INVALID_HANDLE_VALUE ) ErrorExit("CreateFile"); if ( WriteFile( hFile, "CreateFile", 10, &written, NULL ) == 0 ) ErrorExit("WriteFile"); CloseHandle( hFile );
Merci d'avance...
Partager