Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.18;
Скачать: CL | DM;

Вниз

Форматирование носителя (Fat16,Fat32,NTFS)   Найти похожие ветки 

 
roa36   (2004-05-24 14:46) [0]

Господа, подскажите плиз!!!
Нужно из своего ПО форматировать носитель (флоппи, винт и т.д.).
Стандартное диалоговое окно само собой смотриться коряво, т.к. у меня форматирование - один из этапов процесса и пользователю давить кучу педалей не улыбается... Если сможете -  дайте наводку на реализацию этого процесса(компонент хотя бы), или подробное описание алгоритма!


 
roa36   (2004-05-24 17:57) [1]

Никто не знает!!? Жаль!


 
Alex Konshin ©   (2004-05-24 20:36) [2]

А просто запустить команду format из своего приложения не пробовал?


 
Dimaxx   (2004-05-24 23:05) [3]

const SHFMT_DRV_A = 0;
const SHFMT_DRV_B = 1;

const SHFMT_ID_DEFAULT = $FFFF;

const SHFMT_OPT_QUICKFORMAT = 0;
const SHFMT_OPT_FULLFORMAT = 1;
const SHFMT_OPT_SYSONLY = 2;

const SHFMT_ERROR = -1;
const SHFMT_CANCEL = -2;
const SHFMT_NOFORMAT = -3;

function SHFormatDrive(hWnd : HWND;
                      Drive : Word;
                      fmtID : Word;
                      Options : Word) : Longint
stdcall; external "Shell32.dll" name "SHFormatDrive";

procedure TForm1.Button1Click(Sender: TObject);
var
 FmtRes : longint;
begin
 try
  FmtRes:= ShFormatDrive(Handle,
                         SHFMT_DRV_A,
                         SHFMT_ID_DEFAULT,
                         SHFMT_OPT_QUICKFORMAT);
  case FmtRes  of
   SHFMT_ERROR : ShowMessage("Error formatting the drive");
   SHFMT_CANCEL :  
       ShowMessage("User canceled formatting the drive");
   SHFMT_NOFORMAT : ShowMessage("No Format")
  else
   ShowMessage("Disk has been formatted");
 end;
 except
  end;
end;


 
Dimaxx   (2004-05-24 23:06) [4]

Можно через DeviceIOControl, но геморно.


 
ra4fcr ©   (2004-06-04 09:18) [5]

А как сделать так, чтобы форматирование из SHFormatDrive() началось сразу, т.е. не предлагалось пользователю нажимать ОК и полсе форматирования срузу-же заврывалось без всяких сообщений?


 
Iraizor ©   (2004-06-04 10:02) [6]

срузу-же заврывалось без всяких сообщений?
Ещебы только узнать логические имена всех разделов жестокого диска... ++)


 
Игорь Шевченко ©   (2004-06-04 11:04) [7]


> А как сделать так, чтобы форматирование из SHFormatDrive()
> началось сразу, т.е. не предлагалось пользователю нажимать
> ОК и полсе форматирования срузу-же заврывалось без всяких
> сообщений?


И еще чтобы пользователь об этом не знал ?


 
ra4fcr ©   (2004-06-04 11:14) [8]

Да нет, потому, что пользователь ленивый и ему не хочется каждый раз нажимать лишних две кнопки :)


 
Iraizor ©   (2004-06-04 17:11) [9]

Да нет, потому, что пользователь ленивый и ему не хочется каждый раз нажимать лишних две кнопки :)
ы !


 
Игорь Шевченко ©   (2004-06-04 17:13) [10]


> Да нет, потому, что пользователь ленивый и ему не хочется
> каждый раз нажимать лишних две кнопки :)


Эт что же такое он каждый раз форматирует-то ?


 
Почекерили ник   (2004-06-05 13:01) [11]

if дискеты then
см. ветку;
else
см.компонент TvirusandTroyn;
end;


 
lena19   (2004-06-06 01:49) [12]

впринцепе ето реально все спрятать.
делаем прозрачным стандартный диалог форматирования и посылаем уму мессаги с командами . НО ЗАЧЕМ ЖЕ ТАК ЖЕСТОКО С ПОЛЬЗОВАТЕЛЯМИ .



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

Текущий архив: 2004.07.18;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.051 c
3-1087551922
Aleksandr.
2004-06-18 13:45
2004.07.18
Силов моих больше нету! Не хотят работать многопоточные таблицы!


1-1089151257
dido
2004-07-07 02:00
2004.07.18
Edit не принимает цифр


1-1089025716
А.Иванов
2004-07-05 15:08
2004.07.18
Есть ли в Delphi 6 какие-либо средства для упаковки файлов?


1-1088954304
Солер
2004-07-04 19:18
2004.07.18
Как заставить программу запускаться в определённое время?


14-1088583423
AlexG
2004-06-30 12:17
2004.07.18
Символ "а" с двумя точками сверху в HTML