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."
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
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
	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 );
La fonction CreateFile echoue et renvoie 5 : Access is denied.

Merci d'avance...