structure

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
hardy
Messages : 333
Inscription : mer. 02/juin/2004 13:19
Localisation : Tours

structure

Message par hardy »

la structure suivante :

typedef struct _WNODE_HEADER
{ ULONG BufferSize;
ULONG ProviderId;
union {
ULONG64 HistoricalContext;
struct { ULONG Version; ULONG Linkage; }; };
union { HANDLE KernelHandle; LARGE_INTEGER TimeStamp; };
GUID Guid;
ULONG ClientContext;
ULONG Flags;
} WNODE_HEADER, *PWNODE_HEADER;

peut-elle bien se traduire :

Structure LI
low.l
high.l
EndStructure


Structure WNODE_HEADER
buffersize.l
providerid.l
historicalcontext.LI
version.l
linkage.l
kernelhandle.l
timestamp.LI
guid.GUID
clientcontext.l
flags.l
EndStructure
hardy
Messages : 333
Inscription : mer. 02/juin/2004 13:19
Localisation : Tours

Message par hardy »

Y'a bien quelqu'un qui connait le C tout de même ?
Avatar de l’utilisateur
Chris
Messages : 3731
Inscription : sam. 24/janv./2004 14:54
Contact :

Message par Chris »

Sois pas impatient comme ça :lol:

C'est sûr qu'il y a certainement quelqu'un qui peut te renseigner, mais il n'est peut-être pas passé sur le forum.

Tu as essayé sur le forum anglais?

Si je pouvais, je t'aiderai, mais je ne connais rien au C :oops:

Chris :)
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Message par Anonyme2 »

Je ne connais pas grand chose au C

Voilà comment le convertisseur de Header livré avec PB a traduit ce code

Code : Tout sélectionner

Structure WNODE_HEADER
  ProviderId.l
  StructureUnion
    HistoricalContext.ULONG64
    }.Linkage;
  EndStructureUnion
  StructureUnion
    KernelHandle.l
    TimeStamp.LARGE_INTEGER
  EndStructureUnion
  Guid.GUID
  ClientContext.l
  Flags.l
EndStructure
Il ne connait pas les ULONG64 et les LARGE_INTEGER
hardy
Messages : 333
Inscription : mer. 02/juin/2004 13:19
Localisation : Tours

Message par hardy »

Utile quand même : structureunion.
J'avais pas vu que ça existait, et constate que j'avais mal interprété le "union" de C.

Vais voir si ça marche mieux avec ça.

Merci bien.

Note : UINT64, comme LONGLONG,ETC sont des nombres codés en 64bits.
on peut définir
structure UINT64
low.l
high.l
endstructure

c'est compatible.
low et high récupèrent les 4 octets "bas" et "haut"
Répondre