Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Можно ли из дельфей работать с командной строкой?


DimonS ©   (2005-06-14 04:13:00) 

Например, как запустить команду типа rar или xcopy из командной строки? Заранее спасибо, кто ответит.


raidan   (2005-06-14 15:59:00) [1]

>Экспериментатор   (14.06.05 14:18) [11]
true, bro


Экспериментатор   (2005-06-14 14:18:00) [2]


> DimonS ©   (14.06.05 09:58) [3]
> Но вот почему не работает такая конструкция?
>
> s:='copy /y /v "\\Ivc-3\zarplata\zarplata\11\BAZA\Tehnica.*"
> '+'" '+ExtractFilePath(ParamStr(0))+'baza\'+'" ';

Потому что cmd.exe надо запускать


evvcom   (2005-06-14 10:44:00) [3]


> CopyFile в этих случаях не катит, как я понял


FindFirst + FindNext + CopyFile


Anatoly Podgoretsky   (2005-06-14 10:40:00) [4]

А говорил "Да, это оно самое и есть." при этом не догадался посмотреть справку.


АлексейК   (2005-06-14 10:40:00) [5]

А лучше использовать ShellExecuteили CreateProcess. А WinExecоставлена только для совместимости.


DimonS   (2005-06-14 10:37:00) [6]

ТО evvcom
Наверно можно, но вот как скопировать файлы с одним именем, но разными расширениями? или наоборот, с разными именами и одним расширением? CopyFile в этих случаях не катит, как я понял.


evvcom   (2005-06-14 10:11:00) [7]

Используй лучше Format, чтобы не путаться в лишних +, " и '. Это нагляднее:
Format('copy /y /v "\\Ivc-3\zarplata\zarplata\11\BAZA\Tehnica.*" "%sbaza\"', [ExtractFilePath(ParamStr(0))]);


Virgo_Style   (2005-06-14 10:05:00) [8]

Если все же нельзя, то

s:='copy /y /v "\\Ivc-3\zarplata\zarplata\11\BAZA\Tehnica.*" '+ '" '+ExtractFilePath(ParamStr(0))+'baza\'+'" ';

пробел там совсем лишний...


evvcom   (2005-06-14 10:01:00) [9]

А что, просто скопировать файлы нельзя, не используя запуск посторонних программ?


DimonS   (2005-06-14 09:58:00) [10]

Но вот почему не работает такая конструкция?

s:='copy /y /v "\\Ivc-3\zarplata\zarplata\11\BAZA\Tehnica.*" '+'" '+ExtractFilePath(ParamStr(0))+'baza\'+'" ';

WinExec(PChar(s),SW_SHOWNORMAL);

Если записать это в cmd-файл и запустить, то все работает нормально.


DimonS   (2005-06-14 04:31:00) [11]

Да, это оно самое и есть. Спасибо.


Просто Джо   (2005-06-14 04:26:00) [12]

Это, что-ли: WinExec('xcopy',SW_SHOWNORMAL);
Советую переформулировать вопрос.


Наверх

Титульная страница Поиск, карта сайта Написать письмо