----------
|int 13h WINDOWS XP недает даже читать диск
----------
говорит что приложение использует прямой доступ
как сделать так чтабы WINDOWS не прерывал
работу программы ВОТ :-[
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
| Shadow |
Сообщение
#1
|
![]() Lonely_Raven ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 640 Пол: Мужской Репутация: 1 |
---------- |int 13h WINDOWS XP недает даже читать диск ---------- говорит что приложение использует прямой доступ как сделать так чтабы WINDOWS не прерывал работу программы ВОТ :-[ -------------------- Программа делает то что вы ей приказали а не то что бы ВАМ хотелось бы.
МЕРФИ --------------------- RTFM - Read the fucking manual --------------------- http://www.livejournal.com/users/lonley_raven/ |
![]() ![]() |
| GLuk |
Сообщение
#2
|
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 775 Пол: Мужской Репутация: 0 |
{Эххх - попробуй вот это :o}
Uses Crt; Var Buf:array[1..512] of Char; i:Integer; Name:String; Begin ClrScr; Name:='boot!sec.bin'#0; WriteLn('Вставьте дискету и нажмите any key...'); asm mov ah,0 int 16h mov al,0 {Номер логического диска} mov cx,1 {Количество секторов для чтения} mov dx,0 {Номер стартового сектора} lea bx,Buf {Смещение к нашему буферу} int 25h {читаем} end; WriteLn('Прочитали...смотрим содержимое:'); {Выводим, пропуская перевод строки и возврат каретки, дабы не уехало...} For i:=1 to 512 do If (Buf[i]<>#10) or (Buf[i]<>#13) then Write(Buf[i]); asm {Сохранить, прочитанный сектор на диск под именем Name} mov ax,3D02h {Открыть файл} lea dx,Name {Адрес имени} inc dx {Пропускаем байт размера стринга} int 21h jnc @AlrExst {Уже есть} mov ah,3Ch {Если нет - создаем} mov cx,20h {Атрибут - архивный} int 21h {Обращаемся к ДОС} @AlrExst:mov bx,ax {Дескриптор} mov ah,40h {Запись} mov cx,512 {Кол-во байт для записи} lea dx,Buf {Буфер с прочитанным содержимым нулевого сектора} int 21h {пишем} mov ah,3Eh {Закрыть файл} int 21h end; WriteLn('Вставьте следующую дискету then press any key...'); {Можешь оформить в виде отдельных процедур} {А заодно просмотреть содержимое бут-сектора на ЖД - файл boot!sec.bin} asm mov ah,0 int 16h mov ax,3D02h {Открыть файл с содержимым бут-сектора} lea dx,Name {Адрес имени} inc dx {Пропускаем байт размера стринга} int 21h mov bx,ax {Сохр. дескриптор} mov ah,3Fh {Читать из файла} mov cx,512 {512 байт читать} lea dx,Buf {Буфер для чтения} int 21h {читаем} mov ah,3Eh {Закрыть файл} int 21h mov al,0 {Номер логического диска} mov cx,1 {Количество записываемых секторов} mov dx,0 {Номер стартового сектора} lea bx,Buf {Буфер} int 26h {пишешь} end; End. |
Shadow Работа с диском на физическом уровне 24.03.2003 10:09
GLuk Re: Работа с диском на физическом уровне 24.03.2003 10:23
Shadow Re: Работа с диском на физическом уровне 24.03.2003 10:30
GLuk Re: Работа с диском на физическом уровне 24.03.2003 10:47
Shadow Re: Работа с диском на физическом уровне 24.03.2003 11:29
GLuk Re: Работа с диском на физическом уровне 24.03.2003 11:46
Shadow Re: Работа с диском на физическом уровне 24.03.2003 12:10
Shadow Re: Работа с диском на физическом уровне 24.03.2003 23:22
GLuk Re: Работа с диском на физическом уровне 25.03.2003 1:40
Shadow Re: Работа с диском на физическом уровне 25.03.2003 2:24
GLuk Re: Работа с диском на физическом уровне 25.03.2003 10:00
Shadow Re: Работа с диском на физическом уровне 25.03.2003 13:04
GLuk Re: Работа с диском на физическом уровне 25.03.2003 14:50
Shadow Re: Работа с диском на физическом уровне 26.03.2003 4:01
Shadow Re: Работа с диском на физическом уровне 26.03.2003 8:55
GLuk Re: Работа с диском на физическом уровне 26.03.2003 9:59
Shadow Re: Работа с диском на физическом уровне 26.03.2003 11:42
GLuk Re: Работа с диском на физическом уровне 26.03.2003 12:24
Shadow Re: Работа с диском на физическом уровне 26.03.2003 13:29
Shadow Re: Работа с диском на физическом уровне 26.03.2003 16:30
GLuk Re: Работа с диском на физическом уровне 26.03.2003 23:11
Shadow Re: Работа с диском на физическом уровне 28.03.2003 19:05
GLuk Re: Работа с диском на физическом уровне 28.03.2003 20:51
Shadow Re: Работа с диском на физическом уровне 3.04.2003 17:08
GLuk Re: Работа с диском на физическом уровне 3.04.2003 21:56
Shadow Re: Работа с диском на физическом уровне 6.04.2003 17:24
GLuk Re: Работа с диском на физическом уровне 6.04.2003 20:45
GLuk Re: Работа с диском на физическом уровне 6.04.2003 23:45![]() ![]() |
|
Текстовая версия | 7.11.2025 11:56 |