если флешка на FAT(в чём не сильно сомневаюсь), то пишите свой загрузчик куда хотите, а в первых трёх байтах флехи пропишите инструкцию перехода на ваш загрузчик. Вроде так.
Зачем какие-то проги? Код (Text): format PE GUI 4.0 entry start include '%fasminc%\win32a.inc' MBR_SIZE = 512 section '.code' code readable executable align 4 start: invoke CreateFile, DeviceName, GENERIC_READ or GENERIC_WRITE,\ FILE_SHARE_READ or FILE_SHARE_WRITE, 0, OPEN_EXISTING,\ FILE_ATTRIBUTE_NORMAL, 0 cmp eax, INVALID_HANDLE_VALUE je @exit mov ebx, eax push eax invoke CreateFile, FileName, GENERIC_READ,\ FILE_SHARE_READ, 0, OPEN_EXISTING,\ FILE_ATTRIBUTE_NORMAL, 0 cmp eax, INVALID_HANDLE_VALUE je @close push eax invoke ReadFile, eax, MBR, MBR_SIZE, NumberOfBytesRead, NULL test eax, eax jz @F invoke WriteFile, ebx, MBR, MBR_SIZE, NumberOfBytesRead, NULL test eax, eax jz @F xor eax, eax invoke MessageBox, eax, sz, eax, eax @@: call [CloseHandle] @close: call [CloseHandle] @exit: invoke ExitProcess, 0 section '.data' data readable writeable DeviceName db '\\.\PHYSICALDRIVE0',0 FileName db 'MBR.bin',0 sz db 'Successfully !',0 align MBR_SIZE MBR rb MBR_SIZE NumberOfBytesRead dd ? section '.idata' import data readable library kernel32,'KERNEL32.DLL',\ user32,'USER32.DLL' include '%fasminc%\APIA\KERNEL32.INC' include '%fasminc%\APIA\USER32.INC' \\.\PHYSICALDRIVE0 заменить на "флешечный" !
Pavlus Я так и делаю. пишу загрузчик по адресу 0х7с00 а в первых байтах пишу "jmp 7c00" ну в машынном коде. но Когда пробую загрузится с флехи то комп меня посылает на все 4-е сторонны. (Я пробовал грузить флеху как: FDD,HDD,ZIP-FDD,USB-CDROM)