Анимация
JavaScript
|
Главная Библионтека success RenameArray(long id,char newname); Функция позволяет изменить имя массива, заданного идентификатором. Обычно используется редко. Например: Message("0x%X \n", CreateArray("MyArray") 0xFF000041 RemaneArray( GetArrayId("MyArray"), "MyNewname" Message("0x%X \n" GetArrayId("MyNewName") 0xFF000041
void DeleteArray(long id); Функция удаляет массив, заданный идентификатором. Необходимо помнить, что массивы, как элемент Btree хранятся в базе IDA то того момента, пока не будут удалены. Это можно сделать, например, следующим образом: DeleteArray( GetArrayId("MyArray") Операнд Пояснения id I Идентификатор массива success SetArrayLong(long id,long idx,long value); Функция присваивает значение типа «длинное целое» элементу массива, заданного идентификатором. Индекс массива выражается 32-битным целым числом. Разряженные массивы позволяют эффективно хранить данные, не резервируя памяти под несуществующие элементы. Поэтому индексы не обязательно должны следовать один за другим. Так, например, массив может состоять всего из двух индексов, - скажем 0х0 и 0х10000, - при этом будет потрачено всего две ячейки памяти. Необходимо помнить, что один и тот же индекс, одного и того же массива может хранить одновременно данные двух тиров - как строковые, так и длинные целые и никакого «затирания при этом не происходит». Пример использования: SetArrayLong( GetArrayId("MyArray"), 0x100, 0x666);
success SetArrayString(long id,long idx,char str); Функция присваивает значение типа «строка» элементу массива, заданного идентификатором. Индекс массива выражается 32-битным целым числом. Разряженные массивы позволяют эффективно хранить данные, не резервируя памяти под несуществующие элементы. Поэтому индексы не обязательно должны следовать один за другим. Так, например, массив может состоять всего из двух индексов, - скажем 0х0 и 0х10000, - при этом будет потрачено всего две ячейки памяти. Необходимо помнить, что один и тот же индекс, одного и того же массива может хранить одновременно данные двух тиров - как строковые, так и длинные целые и никакого «затирания при этом не происходит». Пример использования: SetArrayString( GetArrayId("MyArray"), 0x100, "MyString");
char or long GetArrayElement(long tag,long id,long idx); Функция служит для чтения обоих типов элементов разряженных массивов. Выбор интересующего типа осуществляется тегом tag. Он может принимать следующие значения:
Запрашиваемый индекс должен быть инициализирован ранее, иначе функция вернет ошибку. Пример использования: SetArrayLong( GetArrayId("MyArray"), 0x100, 0x666); SetArrayString( GetArrayId("MyArray"), 0x100, "MyString"); Message("%s \n0x%X\n", GetArrayElement(AR STR, GetArrayId("MyArray"), 0x100), GetArrayElement(AR LONG, GetArrayId("MyArray"), 0x100), MYString 0x666
success DelArrayElement(long tag,long id,long idx); Функция удаляет указанный тип элемента разряженного массива. Тип задается тегом tag, который может принимать следующие значения, перечисленные ниже в таблце: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 [ 119 ] 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 |