У меня присутствует некий список драйверов, которые я должен сохранять в базу(в моем случае массив), если я вручную буду добавлять каждый драйвер в этот список, то код превратится в простыню на тысячи строк, когда их станет много. Прямолинейно тоже не подходит, будет слишком не читаемо. Есть идеи, что можно поделать? Либо забить просто. Сам список хранится в отдельном .inc файле
И в ширину простыню растить нельзя и в длину. Идеи какого рода тебе нужны? Я вижу, что каждая запись у тебя занимет две строки, можешь регистрировать имена отдельным макросом, а формировать структуру по списку. В два раза меньше строк. Код (ASM): macro regdrv name,val{ match any,driver_list \{ driver_list equ driver_list,name,val \} match ,driver_list \{ driver_list equ name,val \}} macro storedrv [name,val]{ forward dq name forward name du val,0} driver_list equ regdrv name1,'driver1.sys' regdrv name2,'driver2.sys' match driver_list,driver_list { storedrv driver_list } ЗЫ: то, что имена драйверов в юникоде и занимают по 2 байта на символ (хотя вряд ли там будет не-латиница), похоже тебя волнует меньше.
driver_blacklist - криптовать текст, что бы авер не видел. Декриптор под антиэмуль. Штатная схема, формат массивов не важен
Если это не компонент для антивируса Бабушкина, то вряд ли стоит хардкодить черный список малварных драйверов прям в коде драйвера. Это не то чтобы правильный подход с точки зрения архитектуры. Если забыть о том, что имя .sys файла может быть произвольным, то правильнее будет держать список в виде подписанного на приватном ключе конфигурационного файла, загружать его из файла, проверять подпись, чтобы никто из злых русских хакеров не смог его подменить.