> перенести папку /boot ... при живой системе
boot после загрузки используется только во время установки нового ядра/обновления grub. На работающее ядро он никак не влияет.
> По этому не получится лайв-сд'ишнуть. потому как надо будет провести большую работу по дизассемблированию программы. А внутри этой программы делать маунт этой директивы
Может запустить вашу программу под strace и увидеть, какие ключи она скормит LUKS (или чем вы будете шифровать)? Короче, я хочу сказать, что пока это выглядит довольно просто.
Для 32-х и более битных машин -- стоит. Для всякой 8-битной мелочи лучше лишний раз заглянуть в ассемблированный код и подумать: size_t обычно таки unsigned long, нужен ли вам такой диапазон или нет.
вы, мне кажется, не поняли вопрос. Автор вопроса спрашивает, в каких единицах пользователь API ожидает размер буфера -- в байтах или в "элементах". То, что переданного размера может не хватить и что при этом делать -- другой вопрос.
Там есть несколько готовых ядер с драйверами для разных машин. Для вашей скорее всего нет -- вам придётся глядя на существующие собирать своё ядро, и, соответственно, драйвера. Загляните в пакеты dl.fedoraproject.org/pub/fedora-secondary/releases...
@worlxxaker конфигурировать ядро можно итеративно. начать с работающего конфига и добавлять нужных девайсов/фич. Если совсем негда взять работающий конфиг, можно поискать в /proc/config.gz на работающей системе.
@worlxxaker подсказка №1: "простой" путь не всегда на самом деле простой.
подсказка №2: вы всегда можете заглянуть в текст скрипта genkernel чтобы понять, какие файлы где он берёт и куда кладёт.
> как конфиг ядра показать? @worlxxaker прочитать мануал, найти куда ставится конфиг, показать его. Я бы заглянул в /boot.
> -bash: lspci: command not found
не обязательно это делать из новой системы, можно из любой работающей на вашем железе. Ну или да -- lspci -k на ядре, в котором сеть работает.
Ок, продолжаем: если все ваши MH_* отрабатывают успешно, а while вы удалили (кстати, хорошо было бы код в вопросе синхронизировать с "уже удалил"), то вы тоже попадаете в MessageBox("return TRUE").
Вообще похоже, что ваша DLL при инициализации не смогла загрузить свои статические зависисмости. Попробуйте удалить весь код и оставить только DllMain, возвращающий 1 в любом случае. Когда этот минимум заработает, добавляйте к нему вызовы нужных вам функций, понемногу.
boot после загрузки используется только во время установки нового ядра/обновления grub. На работающее ядро он никак не влияет.