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.