Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Удаление файлов из корзины
Goto page Previous  1, 2, 3, 4, 5, 6  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
imig73



Joined: 18 Jun 2013
Posts: 117
Location: г. Иркутск

Post (Separately) Posted: Thu Jul 19, 2018 22:03    Post subject: Reply with quote

Lisabon
У меня UAC тоже включен и никаких ошибок не вижу. Срипт не обязательно запускать от админа, он и так работает при обычном запуске из Exporer.
Back to top
View user's profile Send private message
Lisabon



Joined: 18 Feb 2011
Posts: 126

Post (Separately) Posted: Thu Jul 19, 2018 23:03    Post subject: Reply with quote

imig73
Quote:
не обязательно запускать от админа

Не обязательно, но... Если запустить от админа, то ошибка есть, а если не запускать от админа, то ошибки - нет. Это на Win 7.

Для Vista... Если не запускать от админа, то ошибка:
Code:
Сценарий:   C:\EmptyRecycleBin.vbs
Строка:   13
Символ:   3
Ошибка:   Неопознанная ошибка
Код:   80004005
Источник:    (null)

Если запустить от админа, то ошибка:
Code:
Сценарий:   C:\EmptyRecycleBin.vbs
Строка:   12
Символ:   1
Ошибка:   Невозможно создание объекта контейнером ActiveX: 'GetObject'
Код:   800A01AD
Источник:    Ошибка выполнения Microsoft VBScript
Back to top
View user's profile Send private message
imig73



Joined: 18 Jun 2013
Posts: 117
Location: г. Иркутск

Post (Separately) Posted: Thu Jul 19, 2018 23:15    Post subject: Reply with quote

Lisabon
Ах Vista, ну тада не знаю у меня её нету и не могу протестировать. На 7, 8 и 10 любой разрядности ошибок нет, хоть как запускай...
Back to top
View user's profile Send private message
Skif_off



Joined: 28 Nov 2012
Posts: 1107

Post (Separately) Posted: Fri Jul 20, 2018 00:33    Post subject: Reply with quote

Как-то это странно, держать целую утилиту или скрипт для очистки корзины, не? С NirCmd понятно - утилиту можно использовать не только для этого.

Очистка корзины на AutoIt, одной командой:
Code:
"%COMMANDER_PATH%\AutoIt3.exe" /AutoIt3ExecuteLine "FileRecycleEmpty()"

Очистка корзины конкретного диска, пусть будет D:
Code:
"%COMMANDER_PATH%\AutoIt3.exe" /AutoIt3ExecuteLine "FileRecycleEmpty('D:\')"

Хотя есть нюанс: требуется наличие IE4+.
Back to top
View user's profile Send private message
imig73



Joined: 18 Jun 2013
Posts: 117
Location: г. Иркутск

Post (Separately) Posted: Fri Jul 20, 2018 01:12    Post subject: Reply with quote

Skif_off wrote:
Как-то это странно, держать целую утилиту или скрипт для очистки корзины, не?

Наверное всё же "не", ведь autoit3.exe это тоже утилита 732,7 KB, ИМХО скрипт на 993 байта выглядит практичней. Если уж утилита, то тогда RecycleNOW на 20 KB. Конечно если есть куча полезных скриптов для autoit, то и вопросов нет.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 12957
Location: Москва

Post (Separately) Posted: Fri Jul 20, 2018 01:27    Post subject: Reply with quote

Skif_off wrote:
С NirCmd понятно
Что понятно? Это? :
imig73 wrote:
nircmd утилита годная и много чего умеет, но не для тотала она у меня
Про FileRecycleEmpty (в т. ч. в AHK) я прекрасно знал, но мне было даже стыдно такое предлагать, навязывая интерпретатор, в 1000 раз больший, чем скрипт...

imig73 wrote:
это тоже утилита 732,7 KB
Последняя x32 = 875 Кб и x64 = 990 Кб.
imig73 wrote:
то тогда RecycleNOW на 20 KB.
rbc вообще 10 Кб весит. Wink
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Skif_off



Joined: 28 Nov 2012
Posts: 1107

Post (Separately) Posted: Fri Jul 20, 2018 07:06    Post subject: Reply with quote

imig73 wrote:
Наверное всё же "не", ведь autoit3.exe это тоже утилита

Естественно, нет смысла брать AutoIt ради одной команды очистки корзины и пример на AutoIt связан не с первым вопросом, а названием темы и с "утилиту можно использовать не только для этого".
У меня скриптов десятка 3 точно и, думаю, я не одинок. Или: количество скачиваний TCIMG с сайта wincmd.ru 237361, заодно пробуем
Code:
"%COMMANDER_PATH%\TCIMG\TCIMG.exe" /AutoIt3ExecuteLine "FileRecycleEmpty()"

Работает. И понятно, почему. Запуск любого скрипта:
Code:
"%COMMANDER_PATH%\TCIMG.exe" /AutoIt3ExecuteScript "%COMMANDER_PATH%\Utils\DontSleep.au3"

Т.е. если уже есть, зачем тянуть что-то ещё, на 20 КБ, 10 КБ или даже 993 Б?

Flasher wrote:
я прекрасно знал, но мне было даже стыдно такое предлагать

Как-по мне, не стыдно озвучить все варианты, как ты нередко делаешь.
Back to top
View user's profile Send private message
imig73



Joined: 18 Jun 2013
Posts: 117
Location: г. Иркутск

Post (Separately) Posted: Fri Jul 20, 2018 09:10    Post subject: Reply with quote

Skif_off
Юзер сам решит что ему надо, ваш совет с Autoit имеет право на жизнь + 30 скриптов к нему. Вот у меня есть Autoit и 1 скрипт по замене текста в файлах по нескольким полям, но не пригодился за 2 года ни разу, теперь уберу вместе с интерпретатором.

Касаемо TCIMG, здесь вообще его возможности зашкаливают, но размер в почти 15 MB мне однозначно не нужен, как и сами его функции. Помню на ру-борде в теме по сборкам, сборки на 2,36GB(!) со всяким говном, и не впечатляет утилита эта такого размера с кучей не нужного в работе барахла, которое создатель запихал в 1 exe.

993 Б тянуть не надо, им пользуешся уже второй день и не замечаешь его совсем.

Варианты нужно озвучить все, против никто не будет и как уже написал "Юзер сам решит что ему надо".
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 12957
Location: Москва

Post (Separately) Posted: Fri Jul 20, 2018 10:36    Post subject: Reply with quote

Skif_off
Я смотрю, ты в провокаторы заделался. Есть ряд скриптовых языков, но ты из них всех тянешь именно AutoIt и выдаёшь его с позиции, что лучше для остальных. И кому тут интересно какое-то липовое кол-во скачиваний, из которого в лучшем случае 0.0005% реальных пользователей? Спецом для тебя.

Skif_off wrote:
Т.е. если уже есть, зачем тянуть что-то ещё, на 20 КБ, 10 КБ или даже 993 Б?
Если есть. А если нет? Ты сам понимаешь, что это глупый вопрос, в котором сравниваемое может быть переставлено местами? Ты понимаешь, что то, о чём ты пишешь, это пакет из 100+ файлов, которые тоже надо "тянуть"? (рит.)

Skif_off wrote:
как ты нередко делаешь.
Приведи хоть один пример. Тебя за язык никто не тянул.
Хочешь заняться публикацией всех решений, так вперёд. Есть ещё по меньшей мере 100 вариантов на всяких языках. Ждём твоих изысканий.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
CaptainFlint



Joined: 14 Dec 2004
Posts: 5899
Location: Москва

Post (Separately) Posted: Fri Jul 20, 2018 16:06    Post subject: Reply with quote

Перепалку прекращаем. Альтернативные решения в разумных пределах предлагать не возбраняется, а кому надо, будет сам выбирать, какие из вспомогательных инструментов ему влом скачивать, а какие не влом.
_________________
Почему же, ё-моё, ты нигде не пишешь "ё"?
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 12957
Location: Москва

Post (Separately) Posted: Fri Jul 20, 2018 18:15    Post subject: Reply with quote

Lisabon
Тогда так:
Code:
'====== VBS ======
' Очистить корзину
'===== Flasher © =
Option Explicit: Dim RBin, Old, Par, Str, i, L, Title, A
Set RBin = CreateObject("Shell.Application").NameSpace(10)
With CreateObject("Scripting.FileSystemObject")
  Old = .GetFileVersion(.GetSpecialFolder(1) & "\shell32.dll") < "6.0.6"
  If Old Then Par = 625 : Str = 6 Else Par = 1050 : Str = 8
  If RBin.Items.Count = 1 Then
    If .FileExists(RBin.Items.Item(0).Path) Then
      If Old Then Par = 1042 : Str = 9 Else Par = 1055 : Str = 13
    Else
      If Old Then Par = 1043 : Str = 3 Else Par = 1056 : Str = 4
    End If
  End If
End With
RBin.Self.InvokeVerb "Empty"
With CreateObject("CDO.Message").AddAttachment("res://shell32.dll/6/" & Par).GetDecodedContentStream
  .Type = 1
  For i = 0 To Str
    L = AscB(.Read(2)) * 2 : If L > 0 Then Title = CStr(.Read(L))
  Next
End With
With CreateObject("WScript.Shell")
  Do : A = .AppActivate(Title) : Loop Until A
  WSH.Sleep 10 : .SendKeys "~"
End With
While RBin.Items.Count : WSH.Sleep 400 : Wend
Set RBin = Nothing
Либо:
Code:
'=================
' Очистить корзину
'=================
Set RBin = CreateObject("Shell.Application").Namespace(10)
With CreateObject("Scripting.FileSystemObject")
  While RBin.Items.Count
    Path = .GetParentFolderName(RBin.Items.Item(0).Path)
    .DeleteFolder Path & "\*", 1 : .DeleteFile Path & "\*", 1
  Wend
End With
Set RBin = Nothing

_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.


Last edited by Flasher on Sat Jul 21, 2018 16:26; edited 2 times in total
Back to top
View user's profile Send private message
Lisabon



Joined: 18 Feb 2011
Posts: 126

Post (Separately) Posted: Fri Jul 20, 2018 21:58    Post subject: Reply with quote

Flasher
Quote:
Тогда так:

На Win XP выскакивает стандартное окно подтверждения очистки корзины. Это окно висит и ждёт выбора пользователя. Если нажать нет, то выскакивает ошибка:
Code:
Сценарий:   C:\EmptyRecycleBin.vbs
Строка:   9
Символ:   1
Ошибка:   Указанное имя ресурса не найдено в файле образа.

Код:   80070716
Источник:    CDO.Message.1

Если нажать да, то корзина очищается, но через некоторое время выскакивает, выше указанная ошибка.
Нужен ли чтобы в системе установлен какой-то компонент?
С другими операционками, проблем пока не увидел.


Last edited by Lisabon on Sat Jul 21, 2018 16:51; edited 4 times in total
Back to top
View user's profile Send private message
imig73



Joined: 18 Jun 2013
Posts: 117
Location: г. Иркутск

Post (Separately) Posted: Fri Jul 20, 2018 22:11    Post subject: Reply with quote

Flasher
Да, скрипт на этой странице без PS ещё более универсален и работает на XP и 2k3 с оговорками. Выдаётся запрос на удаление, корзина очищается и выдаётся ошибка

которую просто закрываю. На 7, 8 и 10 ошибок и вопросов нет.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 12957
Location: Москва

Post (Separately) Posted: Fri Jul 20, 2018 22:16    Post subject: Reply with quote

Lisabon
imig73
Cкиньте свои %WinDir%\SYSTEM32\ru-RU\shell32.dll.mui.
В т. ч. для 2k3.

imig73
См. п. 2 снизу.
imig73 wrote:
На 7-ке х32 и XP x32 скрипт отрабатывает без нареканий
А теперь с оговорками? Smile
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
imig73



Joined: 18 Jun 2013
Posts: 117
Location: г. Иркутск

Post (Separately) Posted: Sat Jul 21, 2018 00:15    Post subject: Reply with quote

Flasher
У меня в XP и 2k3 в System32 нет файла shell32.dll.mui (Версии ОС изначально русские).
Flasher wrote:
А теперь с оговорками

Не совсем понял Smile Скрипт без PS с этой страницы универсальней и работает везде хорошо, кроме недочёта описанного мной для XP и 2k3 и Lisabon выше.

p.s. Отвечать довольно сложно, сайт постоянно падает и глючит...
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3, 4, 5, 6  Next
Page 4 of 6

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group