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

Вниз

bat файл, создание и работа   Найти похожие ветки 

 
AlexDan ©   (2009-09-09 10:32) [0]

понадобилось сделать bat файл,
Fname:="1.bat";
AssignFile(f,Fname);
Rewrite(f);
writeln(f,"DeleteFile("+"P11.exe"+");");
closefile(f);
проблема1. по моему в bat должно быть: DeleteFile("P11.exe"); как я сам удивился, к строке +" " "+ т.е. просто значёк " делфи упорно приписывать не хочет..
проблема2. получившийся bat файл удалять ничего не хочет, видимо проблема с правами доступа, может его как-то специально нужно запускать..? просветите пожалуйста..


 
AlexDan ©   (2009-09-09 10:35) [1]

всё, спасибо).., должно быть- del p11.exe


 
Юрий Зотов ©   (2009-09-09 10:36) [2]

Если апостроф является частью строки, его надо удвоить.
"DeleteFile(""P11exe"");"


 
Ega23 ©   (2009-09-09 10:37) [3]


> проблема1. по моему в bat должно быть: DeleteFile("P11.exe");


Это по-твоему, на самом деле будет DeleteFile(P11.exe);
Чтобы получилось DeleteFile("P11.exe"); нужно написать код

writeln(f,"DeleteFile(""P11.exe"");");


> проблема2. получившийся bat файл удалять ничего не хочет,
>  видимо проблема с правами доступа, может его как-то специально
> нужно запускать..? просветите пожалуйста..


А нет такой smell-команды DeleteFile. Есть del[ete]. Вот её и пользуй.


 
Ega23 ©   (2009-09-09 10:38) [4]


> smell-команды


shell-команды, конечно.


 
Anatoly Podgoretsky ©   (2009-09-09 11:12) [5]

> AlexDan  (09.09.2009 10:32:00)  [0]

Delphi сам прекрасно удаляет файлы без каких либо bat файлов.


 
AlexDan ©   (2009-09-09 11:20) [6]

> Anatoly Podgoretsky ©   (09.09.09 11:12) [5]
> Delphi сам прекрасно удаляет файлы без каких либо bat файлов.
нет, нужно чтобы ехе удалил сам-себя, через бат это вроде удобнее.., кстати, как бат запустить через ShellExecute..?


 
Anatoly Podgoretsky ©   (2009-09-09 11:25) [7]

> AlexDan  (09.09.2009 11:20:06)  [6]

Не то что бы удобнее, просто проще, по сравнению с созданием процесса.

Да просто, указать в качестве файла бат файл. Никаких особенностей.


 
Anatoly Podgoretsky ©   (2009-09-09 11:31) [8]

Кстати в данном случае удобнее запустить процесс DeleteFile, если конечно в сообщение не ошибка, можно запустить процесс cmd и передать ему команду del file

В обеих случаях не придется удалять еще и bat файл c диска, кроме того это может и не пройти, на компьютерах с более/менее серьезной системой безопасности.


 
AlexDan ©   (2009-09-09 12:12) [9]

что-то не так:  ShellExecute(0,nil,"prm.bat",nil,nil,SW_HIDE);..? как правильно расставить параметры..?


 
AlexDan ©   (2009-09-09 15:33) [10]

и ещё может кто подскажет, обязательно зацикливать бат файл, чтобы он удалил ехе..? т.е. нельзя ли его как-нибудь запустить из самого ехе, например в форм.дестрой?, наверно вряд ли.
имею в виду такой подход:
@echo off
:del_loop
del [полное имя и путь к EXE файлу]
if exist [полное имя и путь к EXE файлу] goto del_loop
del [полное имя bat файла]


 
Eraser ©   (2009-09-09 17:02) [11]

> [10] AlexDan ©   (09.09.09 15:33)

такой подход работает.


 
AlexDan ©   (2009-09-09 19:05) [12]

и ещё вопрос, как в бат удалить файл название которого из 2-х слов?
del strmat st-ms , например?


 
AlexDan ©   (2009-09-09 21:07) [13]

del "strmat st-ms",  спасибо:)


 
Игорь Шевченко ©   (2009-09-09 21:26) [14]

"format c: /u"


 
AlexDan ©   (2009-09-09 21:28) [15]

> Игорь Шевченко ©   (09.09.09 21:26) [14]
здесь же женщины и дети..:))



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

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

Наверх





Память: 0.47 MB
Время: 0.007 c
2-1252774558
Евгений Сальников
2009-09-12 20:55
2009.11.01
Как сравнить две даты, высчитав кол-во дней?


15-1251664207
Юрий
2009-08-31 00:30
2009.11.01
С днем рождения ! 31 августа 2009 понедельник


2-1252403194
AReal
2009-09-08 13:46
2009.11.01
Как получить список всех компонентов расположенных на чужой форме


2-1252165263
PIROTEX777
2009-09-05 19:41
2009.11.01
ошибка в данных CRC


6-1209043050
tytus
2008-04-24 17:17
2009.11.01
NetWkstaUserGetInfo - как правильно использовать?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский