Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2003.01.30;
Скачать: [xml.tar.bz2];

Вниз

ПРОГРАМНО ОТКЛЮЧИТЬ ФЛОП-ДИСКОВОД   Найти похожие ветки 

 
FOX(c)   (2002-12-11 23:51) [0]

Подскажите плиз КАК ПРОГРАМНО ОТКЛЮЧИТЬ ФЛОП-ДИСКОВОД под Виндой


 
Diamond Cat   (2002-12-12 03:27) [1]

типа так, подробней в хелпе

Locks the physical volume.
mov ax, 440Dh ; generic IOCTL
mov bh, LockLevel ; see below
mov bl, DriveNum ; see below
mov ch, 08h ; device category (must be 08h)
mov cl, 4Bh ; Lock Physical Volume
mov dx, Permissions ; see below
int 21h

jc error



mov ax, 440Dh ; generic IOCTL
mov bl, DriveNum ; see below
mov ch, 08h ; device category (must be 08h)
mov cl, 6Bh ; Unlock Physical Volume
int 21h

jc enter


Parameters

DriveNum

Drive to unlock. This parameter must be one of these values (same device unit numbers as for Interrupt 13h):



00 - 7Fh Floppy disk drive (00 for the first floppy drive, 01 for the second, and so on).
80 - FFh Hard disk drive (80 for the first hard disk drive, 81 for the second, and so on).


Return Value

Clears the carry flag if successful. Otherwise, the function sets the carry flag and sets the AX register to an error value.





 
Игорь Шевченко   (2002-12-12 09:50) [2]

Глупый вопрос: нафига его отключать ?


 
Fox(c)   (2002-12-12 21:03) [3]


> Игорь Шевченко © (12.12.02 09:50)
> Глупый вопрос: нафига его отключать ?


Мне нужно будет удаленно отрубать флопы на клиентских тачках.


> Diamond Cat © (12.12.02 03:27)
>
> mov bh, LockLevel ; see below
> mov dx, Permissions ; see below


Конечно всё круто, но в идеале было бы неплохо знать
возможные значения параметров LockLevel и Permissions
Вы наверное упустили параметры хоть и указали see below.


 
Cobalt   (2002-12-13 00:39) [4]

подробней в хелпе


 
Fox(c)   (2002-12-13 03:17) [5]

У меня есть TECH Help (asm). Но он не полный, там не все параметры рассмотрены :(
Чем можете мне помочь?


 
Diamond Cat   (2002-12-13 03:42) [6]

LockLevel

Level of the lock. This parameter must be either 0, 1, 2, or 3.



Permissions

Operations that the system permits while the volume is locked. This parameter is specified only when a level 1 lock is obtained or when a level 0 lock is obtained for the second time for formatting the volume. For other lock levels, this parameter is zero. When a level 1 lock is obtained, bits 0 and 1 of this parameter specify whether the system permits write operations, new file mappings, or both by other processes during a level 1 lock as well as during level 2 and 3 locks. If this parameter specifies that write operations, new file mappings, or both are failed, these operations are failed during level 1, 2, and 3 locks. This parameter has the following form:

Bit Meaning
0 0 = Write operations are failed (specified when a level 1 lock is obtained).
0 1 = Write operations are allowed (specified when a level 1 lock is obtained).
1 0 = New file mapping are allowed (specified when a level 1 lock is obtained).
1 1 = New file mapping are failed (specified when a level 1 lock is obtained).
2 1 = The volume is locked for formatting (specified when a level 0 lock is obtained for the second time).

справка по пользованию справкой
В панели дельфей выбираешь менюшку HELP
нежно жмем на нее мышкой (левой кнопочкой)
в выпавшем мнею выбираем пункт Windows SDK
во вкладке "Предметный указаткль" набираем
"Interrupt 21h Function 440Dh Minor Code 4B" и жмем кнопочку "показать", радостно впитываем инфу


 
Игорь Шевченко   (2002-12-13 09:39) [7]

Fox(c) (12.12.02 21:03)

> Мне нужно будет удаленно отрубать флопы на клиентских тачках.


А зачем ?


 
Fox(c)   (2002-12-14 03:22) [8]


> Diamond Cat © (13.12.02 03:42)


Делфи стал юзать совсем недавно, а на меню хелпа "Windows SDK" не обращал раньше внимания, поэтому немного протупил. Сори.
Огромное спасибо за скорую подсказку.


> Игорь Шевченко © (13.12.02 09:39)


Будет прога состоять из двух частей: серверной и клиентской.
С сервера посылается запрос к определённому клиенту на блокировку флопа.
Короче такой себе простенький курсак в универе - прихоть препода.


 
Fox(c)   (2002-12-14 17:20) [9]

Повесил на кнопку следующий код:


procedure TForm1.Button1Click(Sender: TObject);
begin
asm
//Locks the physical volume.
mov ax, 440Dh // generic IOCTL
mov bh, 01h //LockLevel
mov bl, 00h //DriveNum
mov ch, 08h //device category(must be 08h)
mov cl, 4Bh //Lock Physical Volume
mov dx, 110b //Permissions
int 21h
end;
end;


который на шаге вызова прерывания вываливает мне стандартное виндовское синее окно Error:
типа неустранимая ошибка 0D по адресу ... приложение будет снято
Пробовал разные значения LockLevel и Permissions.
Может я где-то конкретно торможу?



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2003.01.30;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.008 c
1-96780
БурЖуй
2003-01-22 20:56
2003.01.30
Программное создание обьектов


1-96673
Temp
2003-01-21 16:57
2003.01.30
StringGrid


9-96503
Deadlock
2002-08-04 00:40
2003.01.30
X (TDxInput)


14-97002
Reindeer Moss Eater
2003-01-13 15:11
2003.01.30
TurboPower Software Company


4-97072
TankMan
2002-12-14 00:31
2003.01.30
Как быстрее всего сравнить содержимое двух TBitMap?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский