| Prototype |
| E_RTN | EMemory::BlocksFind( | ulonglong | *pullOffsetFound, |
| ulonglong | *pullBlockIdxFound, | ||
| EMemory::SC_BLOCK | *pscBlockToFind, | ||
| ulonglong | ullBlockToFindCount, | ||
| ulonglong | ullOffset = 0, | ||
| ulonglong | ullOffsetSize = EMemory::SizeUpToEnd ); |
Cette fonction cherche dans l'intervalle de travail un bloc d'octets ayant l'une des valeurs de la série de blocs d'octets pscBlockToFind.
| Argument |
|
ulonglong *pullOffsetFound adresse d'une variable de type ulonglong où sera copiée l'offset de l'octet trouvé. Si le bloc d'octets n'a pas été trouvé et si cet argument n'est pas NULL alors la valeur EMemory::DataNotFound est copiée dans la variable (*puimOffsetRtn=EMemory::DataNotFound). Si cette information ne vous intéresse pas cet argument peut être NULL (la fonction ne retournera pas d'erreur à ce propos). |
|
ulonglong *pullBlockIdxFound adresse d'une variable de type ulonglong où sera stockée l'index du bloc trouvé. Si cette information ne vous intéresse pas cet argument peut être NULL (la fonction ne retournera pas d'erreur à ce propos). |
|
EMemory::SC_BLOCK *pscBlockToFind adresse de la structure de type EMemory::SC_BLOCK ou du tableau de structures de type EMemory::SC_BLOCK à rechercher. |
|
ulonglong ullBlockToFindCount nombre de structure de type EMemory::SC_BLOCK contenu dans le pointeur pscBlockToFind à rechercher. |
|
ulonglong ullOffset = 0 offset de départ de l'intervalle de travail de recherche. |
|
ulonglong ullOffsetSize = EMemory::SizeUpToEnd étendue de l'intervalle de travail de recherche. |
| Retour |
|
E_RTN voir la section retour de la librairie Eclat. |
| Exemple 1 |
|
Description : Recherche et affichage d'offset de tous les blocs d'octets ayant soit la valeur 0x0D, soit la valeur 0x0A, soit les valeur 0x0D et 0x0A, soit la valeur 0x00 dans un objet EMemory alloué de 26 octets d'espace de travail contenant les données 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x0D, 0x0A, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x0D, 0x4C, 0x4D, 0x4E, 0x4F, 0x0A, 0x50, 0x51, 0x52, 0x00, 0x53, 0x54 et 0x0D ("ABCDEF\x0D\x0AGHIJK\x0DLMNO\x0APQR\x00ST\x0D" en ASCII). |
|
Code :
|
|
Sortie :
|
|
Vue :
|
| Exemple 2 |
|
Description : Cet exemple est un peu plus complexe que le précédent. Il fait la même chose mais avec un intervalle de travail qui s'étand de l'offset 1 sur une taille de 24 octets (un surcroît de code est nécessaire pour ajuster la taille de recherche). |
|
Code :
|
|
Sortie :
|
|
Vue :
|
| Voir aussi |
| Minimum |
| Version | 1.0.0 |