Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/18: Рейтинг темы: голосов - 18, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 23.02.2017
Сообщений: 25
1

Как удалить определённый EXE-файл, не зная его имени?

23.02.2017, 09:30. Показов 3240. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как удалить определенный exe файл не зная имени файла. Пример, есть файл батник (test.bat) и test.exe (программа), и мне нужно удалить эту программу через батник, если писать код удаление типа del *.exe то будут удалятся все такие расширения, а если писать del test.exe то тогда если кто то будет переименовать файл к примеру beda.exe тогда будет точно беда. Скажите пожалуйста как реализовать этот код, есть варианты найти по описанию программы, но не знаю как.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.02.2017, 09:30
Ответы с готовыми решениями:

Удалить файл, зная только часть его имени
Здравствуйте. Допустим есть файл без расширения "KK123", но каждый раз при перезагрузке...

Как получить файл не зная его имени
На сервер отправляется файл, имени которого я не знаю. Вопрос - каким образом выполнить его перенос...

Как отправить файл на сервер через FTP не зная имени а зная только расширение файла?
Доброго времени суток! Очень нужна ваша помощь форумчане.. Пытаюсь отправить файл через FTP на...

Как узнать адрес объекта, не зная его имени?
Есть две панели на форме. Как узнать адрес одной панели в памяти с помощью (Form1.Controls as...

12
199 / 209 / 69
Регистрация: 09.02.2016
Сообщений: 1,040
23.02.2017, 14:58 2
Я предлогаю прописать путь программы.
0
0 / 0 / 0
Регистрация: 23.02.2017
Сообщений: 25
23.02.2017, 15:33  [ТС] 3
Если переименовать файл то удаление не будет.
0
Покинул форум
3672 / 1483 / 355
Регистрация: 07.05.2015
Сообщений: 2,903
24.02.2017, 09:35 4
Цитата Сообщение от erlan86
Скажите пожалуйста как реализовать этот код, есть варианты найти по описанию программы, но не знаю как.
Что есть исполняемый файл? Это PE'шник, следовательно, чтобы получить его описание (если таковое вообще имеется), нужно его развинтить на заголовки, секции и иже с ними, чтобы получить нужную информацию, однако средствами командной строки это делать долго, муторно и вообще не кошерно, так как приходится читать побайтово, - снова-таки, если речь о штатных средствах. Был бы в наличии, скажем, xxd, решение упростилось бы вдвое. Если же Windows > 6.0 (Vista), как вариант можно обратиться за помощью к PowerShell:
PowerShell
1
2
3
4
5
PS> (Get-Item .\test.exe).VersionInfo.FileDescription
Domain information lookup
PS> Rename-Item .\test.exe bad.exe
PS> (Get-Item .\bad.exe).VersionInfo.FileDescription
Domain information lookup
Чем порочен метод удаления PE'шника относительно его описания? Как уже было сказано ранее, описания может и не быть вовсе, во-вторых... во-вторых, есть ряд других нюансов, которые становятся очевидными по мере наращивания опыта при администрировании виндовых ОСей. По этой причине удалять файл, имя которого может быть изменено, лучше всего по его хэшу, но не тому, который подвержен коллизиям (как, например, MD5, SHA1, SHA256), а тому, который на данный момент не удавалось еще никому "поломать" (тот же SHA512). Для проверки хэша можно использовать либо certutil (если речь о Windows 7 и старше), либо воспользоваться либой openssl:
Windows Batch file
1
2
E:\sandbox> openssl.exe dgst -r -sha512 test.exe
93c5325dd...55ee49 *test.exe
Собственно, полученный хэш храните в переменной в командном сценарии - это будет эталонный хэш; далее получаете список всех исполняемых файлов в указанной папке (или на диске) - потенциальном месте расположения, - чекаете хэши и сравниваете с эталонным, при совпадении файл можно будет безболезненно удалить. Удачи!
1
0 / 0 / 0
Регистрация: 23.02.2017
Сообщений: 25
24.02.2017, 11:49  [ТС] 5
Спасибо за ответы, но я вчера начал программировать на Delphi, просто не хочется открывать Delphi чтоб удалить какой то файл, но другого варианта не было, Объясняю по подробнее, есть файлы которые надо установить в Windows и удалить исходный файл, с помощью smart Install maker сделал инсталлятор и внутри добавил bat файл который будет заниматься удалением EXE-шника, если указать имя правильно то файл удаляется, а если в друг кто то поменяет имя то... понятно. Долго мучался и пришлось открыть Delphi. Теперь не придется искать имя файла а просто буду компилировать все ресурсы внутрь самой программы.
0
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
24.02.2017, 16:32 6
Цитата Сообщение от erlan86 Посмотреть сообщение
а если в друг кто то поменяет имя то...
вообще при таком подходе (ситации) есть вероятность что этот кто-то этот файл удалит за вас ..., но только вместе с Windows
0
0 / 0 / 0
Регистрация: 23.02.2017
Сообщений: 25
24.02.2017, 17:05  [ТС] 7
Нужно удалить чтоб во второй раз не нажали.
0
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
24.02.2017, 19:00 8
Цитата Сообщение от erlan86 Посмотреть сообщение
чтоб во второй раз не нажали
подробнее

почему должен нажать кто-то кроме вас
почему должны это нажимать, если потом оно удаляется
где лежит, в отдельной папке или в куче, почему не держать отдельно и безболезненно очищать папку (или вместе с папкой) не беспокоясь о возможном изменении имени
0
0 / 0 / 0
Регистрация: 23.02.2017
Сообщений: 25
24.02.2017, 19:15  [ТС] 9
Файл будет находится где угодно, файл будет гулять на флешке или в папке загрузки, рядом могут лежат и другие файлы и по этому нужно сделать так чтоб файлы рядом не удалялись.
0
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
25.02.2017, 00:55 10
erlan86,
т.е. файл не представляет ценности и если не будет удален, то и плевать на него? Если нет, почему такое отношение к файлу. Если файл опасен и запускать его можно лишь единожды - почему к нему такое отношение?
0
0 / 0 / 0
Регистрация: 23.02.2017
Сообщений: 25
25.02.2017, 01:09  [ТС] 11
не хочу чтоб на него внимание обращали, и путался под ногами. Раз запустил исчез и забыл. Вот пример даже вопрос, если Вы закачали это к себе и нажали и ничего не происходит и что будете делать?
0
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
25.02.2017, 01:29 12
Цитата Сообщение от erlan86 Посмотреть сообщение
если Вы закачали это к себе и нажали и ничего не происходит и что будете делать?
во-первых что попало не закачиваю
если что как-то и закачалось с легкой руки не запускаю, сначала пытаюсь узнать что это
на крайний случай запускаю в "песочнице"
а лично у меня диск "C:" постоянно в "песочнице", запускаю смотрю мура да и плевать, перезагрузился через час, если не мешает работе и мура исчезла

ну, как теперь будете отвечать на заданные выше вопросы?
0
4334 / 2124 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
25.02.2017, 01:39 13
и для вашего случая и не только, научитесь делать описания для неизвестных файлов чтобы они не были неизвестными и тогда кто-то и даже вы всегда будете видеть что это, надо ли это запускать и стоит ли это удалять
Как удалить определённый EXE-файл, не зная его имени?
0
25.02.2017, 01:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.02.2017, 01:39
Помогаю со студенческими работами здесь

Как получить значение текстового ресурса, не зная его имени?
Добрый день! Подскажи как можно получить значение текстового ресурса, имя которого на момент...

Как узнать имя exe, зная его id?
Пишу программу отслеживающие активность пользователя. Проблема стоит в том что не могу найти...

Как с помощью FindWindowA найти окно, зная только часть его имени?
Вообщем написал если найдет окно с Cheat Engine 6.3 то будет выполнять действие,например HWND...

Как узнать имя exe зная его id (WinApi,c++)
Пишу программу отслеживающие активность пользователя. Проблема стоит в том что не могу найти...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru