un ciao a tutti.
vorrei capire nelle 2 strutture riportate qui sotto gli array "Handles[1] e FileName[1]"
se non sbaglio sono array ad una dimensione,ad esempio "FileName" è di tipo WCHAR
che rappresenta un carattete unicode,come puo' contenere un nome intero?
forse perchè " *PFILE_NAME_INFORMATION" è un puntatore?.

codice:
typedef struct _SYSTEM_HANDLE
{ 
	ULONG			uProcessId;
	UCHAR			ObjectType;
	UCHAR			Flags;		
	USHORT			Handle;
	PVOID			pObject;
	ACCESS_MASK		GrantedAccess;
} SYSTEM_HANDLE, *PSYSTEM_HANDLE;


typedef struct _SYSTEM_HANDLE_INFORMATION   //Information Class 16
{
	ULONG	Count;	    //numero di registi nel'array Handles	
	SYSTEM_HANDLE	Handles[1];
} SYSTEM_HANDLE_INFORMATION, *PSYSTEM_HANDLE_INFORMATION;
poi questa struttura:

codice:
typedef struct _FILE_NAME_INFORMATION	// Information Classes 9 and 21
{
    ULONG FileNameLength;   //lunghezza del nome del file	
    WCHAR FileName[1];      //nome completo del file.		
} FILE_NAME_INFORMATION, *PFILE_NAME_INFORMATION;
un grazie anticipato.