СообЧа > База Знаний > Программирование > Delphi

Вопрос

Как выполнить команду DOS? Например,

attrib +r *.*
copy *.* a:
label a: my_disk и др.

Не заменять командами Delphi.

Ответ

WinExec('attrib +r *.*', SW_SHOW); — показать окно консоли при выполнении.

WinExec('copy *.* a:', SW_HIDE); — никаких новых окон.

WinExec('label a: my_disk', SW_MINIMIZE); — минимизировать окно консоли при выполнении.

Из конференции Expert_FAQ

Если так как написано здесь ничего не получилось, то попробуйте дописать команды так :

'command.com /C attr +r *.*'

и т.д.
Я лично возился с копированием и уменя все получилось.
Почему так: На мой взгляд, потому что WinExec предназначена для запуска програм (exe , com) файлов, а command.com с параметром /C уже для выполнения команд DOS.



Copyright © 2000-2004 Сообщество Чайников
Контактная информация