![]() |
|
Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply |
![]()
|
|
| PIF |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 27.1.2005 Репутация: нет Всего: нет |
При выполнении данного кода, по завершении программы .exe файл должен удаляться, но этого не происходит. Скажите пожалуйста, что я делаю не так. Заранее благодарен!!! Это сообщение отредактировал(а) Alex - 6.5.2005, 20:19 |
|||
|
||||
| HELPER |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 63 Регистрация: 18.4.2005 Репутация: 1 Всего: -2 |
Короче, ты хочешь удалить файл после его выполнения, фишка заключается в том, что есть процесс, и пока он есть не можешь удалить исполняемый файл, так... Значит, ты пытаешся удалить его с помощью bat, что ж идея хорошая, но неоригинальная.... Ну да ладно, должно работать...запускаем....фигу! Где ошибк.......АГА! Обработчик события FormDestroy(Sender: TObject) срабатывает не на завершение процесса, а на уничтожение экземляра формы, знасит процесс все еще идет..., а значит получаем ошибку удаления, а иммено "Отказано в доступе" Слушай совет: способ ты выбрал хороший и можно попробовать запустить (без создания формы) побочный процесс, который и удалит твой exe-шник, или добвить задержку в твой bat-ник, что бы процесс успел завершится, понял?? Это сообщение отредактировал(а) Girder - 7.5.2005, 13:57 |
|||
|
||||
| PIF |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 27.1.2005 Репутация: нет Всего: нет |
А вы не могли бы поподробней, как мне можно это на деле сделать, а то я ещё не совсем опытный.
Спасибо!!! |
|||
|
||||
| RA |
|
|||
![]() Брутальный буратина ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3497 Регистрация: 31.3.2002 Где: Лес Репутация: 7 Всего: 115 |
|
|||
|
||||
| Code Magister |
|
|||
![]() Magister of Code ![]() Профиль Группа: Участник Сообщений: 155 Регистрация: 9.7.2004 Где: Kiev Репутация: нет Всего: 1 |
Если в имени файла есть кириллица то код не работает
--------------------
|
|||
|
||||
| Quadr0 |
|
|||
|
Unregistered |
...
Это сообщение отредактировал(а) Quadr0 - 14.7.2011, 20:25 |
|||
|
||||
| Illusion Dolphin |
|
||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1198 Регистрация: 3.5.2003 Репутация: 4 Всего: 63 |
Я же столкнулся с проблемой использования BAT-файлов подобного типа - касперский 5.0 с последними антивирусными базами и базовыми настройками беопастиности СЧИТАЕТ ВИРУСОМ код, предложенный PIF'ом (или подобный, т.к. он работал). Судя по всему подобная учесть может быть и у бата от RAdmin. Позавчера решил задачку так:
Делается маленький экзешник, удаляющий файл, переданный по командной строке (ео можно и на асме написать - места занимать меньше будет):
Далее засовываем его в файл ресурсов с именем DeleteFileRes.res, в секрию RCData под именем DELETEFILEEXE. Далее код модуля SelfDeleteUnit.pas:
Код такого рода запуска приложения из ресорсов взят из этого форума. Т.е. запускается по сути любое приложение, которое есть на винте, затем в него записывается файл из ресурсов и процесс возобновлется. P.S. я прикрепил исходники, Project2.exe - самоудаляющийся файл. Присоединённый файл ( Кол-во скачиваний: 14 )
deletefile.zip-------------------- В мире всего две бесконечности: вселенная и человеческая глупость... На счёт вселенной я не уверен. Шифрование и организация фотографий - Photo Database 4.5 |
||||
|
|||||
![]()
|
| Правила форума "Delphi: WinAPI и системное программирование" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |