Prototype |
E_RTN | EMemory::ByteInsertEach( | ulonglong | *pullByteCountInserted, |
uchar | ucByteToInsert, | ||
ulonglong | ullStepEach, | ||
BOOL | bStartAtFirst, | ||
ulonglong | ullOffset = 0, | ||
ulonglong | ullOffsetSize = EMemory::SizeUpToEnd ); |
Cette fonction insère dans l'intervalle de travail l'octet ucByteToInsert à intervalle régulier d'une taillle de ullStepEach octet(s).
Si l'intervalle de travail est inférieur à l'intervalle régulier, cette fonction ne fait rien car elle insère un octet TOUS LES INTERVALLES REGULIERS (voir l'exemple pour l'objet eMem3).
Argument |
ulonglong *pullByteCountInserted adresse d'une variable de type ulonglong où y sera stocké le nombre d'octets inséré. Si cette information ne vous intéresse pas cet argument peut être NULL (la fonction ne retournera pas d'erreur à ce propos). |
ucByteToInsert octet à insérer. |
ulonglong ullStepEach taille de l'intervalle régulier d'insertion. |
BOOL bStartAtFirst commencer l'insertion à partir de l'offset de départ. Dans ce cas, spécifiez la valeur TRUE. |
ulonglong ullOffset = 0 offset de départ de l'intervalle de travail d'insertion. |
ulonglong ullOffsetSize = EMemory::SizeUpToEnd étendue de l'intervalle de travail d'insertion. |
Retour |
E_RTN voir la section retour de la librairie Eclat. |
Exemple |
Description : Insertion de l'octet 0x58 ("X" en ASCII) à intervalle régulier d'un octet sur l'ensemble de l'espace de travail d'un objet EMemory (eMem0) alloué d'une taille 3 octets contenant les données 0x41, 0x42 et 0x43 ("ABC" en ASCII). Insertion de l'octet 0x58 ("X" en ASCII) à intervalle régulier de deux octets dans l'intervalle de travail de l'offset 1 sur une étendue de 3 octets d'un objet EMemory (eMem1) alloué d'une taille 5 octets contenant les données 0x44, 0x45, 0x46, 0x47 et 0x48 ("DEFGH" en ASCII). Insertion de l'octet 0x58 ("X" en ASCII) à intervalle régulier de trois octets sur l'ensemble de l'espace de travail d'un objet EMemory (eMem2) alloué d'une taille 3 octets contenant les données 0x49, 0x4A et 0x4B ("IJK" en ASCII). Enfin, insertion de l'octet 0x58 ("X" en ASCII) à intervalle régulier de quatre octets sur l'ensemble de l'espace de travail d'un objet EMemory (eMem3) alloué d'une taille 3 octets contenant les données 0x4C, 0x4D et 0x4E ("LMN" en ASCII). L'objet n'a pas assez d'espace de travail pour que cette dernière insertion soit effective. |
Code :
|
Sortie :
|
Vue : Vue de l'objet eMem0 avant et après insertion :
Vue de l'objet eMem1 avant et après insertion :
Vue de l'objet eMem2 avant et après insertion :
Vue de l'objet eMem3 avant et après insertion :
|
Voir aussi |
Minimum |
Version | 1.0.0 |