<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: Контекстное меню безопасного удаления]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=8251</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=8251&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Контекстное меню безопасного удаления».]]></description>
		<lastBuildDate>Fri, 26 Apr 2013 07:22:05 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: Контекстное меню безопасного удаления]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=71677#p71677</link>
			<description><![CDATA[<p>Пока не было времени заниматься этим, но думаю, проблема заключается в неверной передаче SDelete.exe команды на удаление сразу несколько объектов &quot;RunWait, sdelete.exe -s &quot;%A_LoopField%&quot;, , hide&quot;.</p><p>SDelete.exe упорно не хочет удалять через скрипт несколько объектов. Не могу понять причину.<br />Пробовал передать в командной строке команду:<br />sdelete.exe -s &quot;D:\xxx\111.xxx&quot; &amp;&amp; sdelete.exe -s &quot;D:\xxx\222.xxx&quot; &amp;&amp; sdelete.exe -s &quot;D:\xxx\333.xxx&quot; - это все работает.</p><p>Кажется я понял. RunWait передает команду на ожидание завершения работы SDelete.exe, но не на ожидание завершения удаления каждого из нескольких файлов? Надо реализовать последовательное удаление нескольких объектов после удаления предыдущего, как в команде, обозначенной выше?</p><p>Скорее всего, надо копать в этом направлении ....</p>]]></description>
			<author><![CDATA[null@example.com (Dr.Jekyll)]]></author>
			<pubDate>Fri, 26 Apr 2013 07:22:05 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=71677#p71677</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Контекстное меню безопасного удаления]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=71657#p71657</link>
			<description><![CDATA[<div class="quotebox"><blockquote><p>Кстати, что-то компактнее этого появилось?</p></blockquote></div><p> Для окон проводника:<br /></p><div class="codebox"><pre><code>ExplorerGetSelection(hwnd := &quot;&quot;) {
; всего лишь пример. 
    (hwnd) || hwnd := WinExist(&quot;A&quot;)
    WinGetClass winClass, ahk_id %hwnd%

    if (winClass != &quot;CabinetWClass&quot; &amp;&amp; winClass != &quot;ExploreWClass&quot;)
        return

    for explorerWindow in ComObjCreate(&quot;Shell.Application&quot;).Windows {
        if (explorerWindow.hwnd != hwnd)
            continue

        for selectedItem in explorerWindow.Document.SelectedItems
            itemList .= selectedItem.path . &quot;`n&quot;
    }
    explorerWindow := selectedItem := &quot;&quot;
    return Rtrim(itemList) ; возвращается строка включающая пути выделенных файлов. разделитель `n
}</code></pre></div><p>Как получить список выделенных файлов на рабочем столе&nbsp; — по ссылке.</p>]]></description>
			<author><![CDATA[null@example.com (creature.ws)]]></author>
			<pubDate>Thu, 25 Apr 2013 08:06:29 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=71657#p71657</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Контекстное меню безопасного удаления]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=71629#p71629</link>
			<description><![CDATA[<div class="quotebox"><blockquote><p>MsgBox сообщает, что файл<strong>ы</strong> xxxxx.xxx удален<strong>ы</strong>.</p></blockquote></div><p>В коде сообщения #14 нет Msgbox с таким сообщением.<br /></p><div class="quotebox"><blockquote><p>и какой вариант лучше?</p></blockquote></div><p>Тот, который работает. В данный момент у вас есть один вариант.</p>]]></description>
			<author><![CDATA[null@example.com (creature.ws)]]></author>
			<pubDate>Mon, 22 Apr 2013 15:01:19 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=71629#p71629</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Контекстное меню безопасного удаления]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=71603#p71603</link>
			<description><![CDATA[<p>Большое спасибо, creature.ws! Теперь все заработало, как хотелось, но при множественном выделении почему-то удаляется только по одному файлу, хотя MsgBox сообщает, что файлы xxxxx.xxx удалены. <img src="//forum.script-coding.com/img/smilies/sad.png" width="15" height="15" /></p><div class="quotebox"><cite>creature.ws пишет:</cite><blockquote><p>Список файлов из проводника можно получать с помощью COM, механизм «безопасного удаления» sdelete — реализовать на autohotkey. FileWipe и GetFileList используют способ предложенный в первом сообщении.</p><p>«Глюки», вероятно, возникали при множественном запуске скрипта и sdelete.</p></blockquote></div><p>А как это все реализовать и какой вариант лучше? ... Я пока еще не &quot;догоняю&quot;. Если Вам не сложно, пожалуйста! Мне легче понять это из кода скрипта, чем искать в справке ....</p>]]></description>
			<author><![CDATA[null@example.com (Dr.Jekyll)]]></author>
			<pubDate>Mon, 22 Apr 2013 07:23:07 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=71603#p71603</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Контекстное меню безопасного удаления]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=71600#p71600</link>
			<description><![CDATA[<p>Off:<br /></p><div class="quotebox"><cite>creature.ws пишет:</cite><blockquote><p><span style="color: #C3C3C3">Список файлов из проводника можно получать с помощью COM</span></p></blockquote></div><p><span style="color: #C3C3C3"><br />Кстати, что-то <a href="http://www.autohotkey.com/board/topic/60985-get-paths-of-selected-items-in-an-explorer-window/">компактнее этого</a> появилось?</span></p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Mon, 22 Apr 2013 02:27:10 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=71600#p71600</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Контекстное меню безопасного удаления]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=71598#p71598</link>
			<description><![CDATA[<div class="codebox"><pre><code>#NoEnv
#NoTrayIcon
#SingleInstance Ignore
SetBatchLines -1

if !fileList := GetFileList()
    ExitApp

loop Parse, fileList, `n
{
    Splitpath, A_LoopField, fileName
    fileNameList .= fileName . &quot;`n&quot;
}

MsgBox, 4, ContextDeleteMenu, Удалить безвозвратно:`n`n%fileNameList%`n`nПродолжить?
IfMsgBox, No, ExitApp

loop Parse, fileList, `n
    FileWipe(A_LoopField)

FileWipe(ByRef filePath) {
    RunWait sdelete.exe -s &quot;%filePath%&quot;,, hide UseErrorLevel
    if !ErrorLevel
        MsgBox, 32, ContextDeleteMenu, Удалено`r`n%filePath%, 1.5
}

GetFileList() {
    clipboard := &quot;&quot;
    Send, ^{vk43}
    ClipWait, 2
    return Clipboard
}

</code></pre></div><p>Список файлов из проводника можно получать с помощью COM, механизм «безопасного удаления» sdelete — реализовать на autohotkey. FileWipe и GetFileList используют способ предложенный в первом сообщении.</p><p>«Глюки», вероятно, возникали при множественном запуске скрипта и sdelete.</p>]]></description>
			<author><![CDATA[null@example.com (creature.ws)]]></author>
			<pubDate>Sun, 21 Apr 2013 21:11:34 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=71598#p71598</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Контекстное меню безопасного удаления]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=71597#p71597</link>
			<description><![CDATA[<p>Я понял, .... что ничего не понял. Извините. Благодарю за помощь!</p>]]></description>
			<author><![CDATA[null@example.com (Dr.Jekyll)]]></author>
			<pubDate>Sun, 21 Apr 2013 18:19:59 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=71597#p71597</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Контекстное меню безопасного удаления]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=71596#p71596</link>
			<description><![CDATA[<div class="quotebox"><blockquote><p>- это что означает?</p></blockquote></div><p>Вам были заданы вопросы в 5 посте, из ответов на которые можно было бы сделать выводы.... </p><p>Остальные ваши &quot;текста&quot;, увы не возвращают мне сути по сабжу.</p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Sun, 21 Apr 2013 18:16:00 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=71596#p71596</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Контекстное меню безопасного удаления]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=71595#p71595</link>
			<description><![CDATA[<div class="quotebox"><cite>serzh82saratov пишет:</cite><blockquote><p><a href="http://forum.script-coding.com/viewtopic.php?pid=71589#p71589">Return</a></p></blockquote></div><p> - это что означает? Можно разжевать чайнику? <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></description>
			<author><![CDATA[null@example.com (Dr.Jekyll)]]></author>
			<pubDate>Sun, 21 Apr 2013 18:12:09 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=71595#p71595</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Контекстное меню безопасного удаления]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=71594#p71594</link>
			<description><![CDATA[<p>В принципе, этот скрипт нужен для того, чтобы случайно безвозвратно не удалить нужный файл. Можно непосредственно в реестр добавить вместо ContextDeleteMenu.exe - sdelete.exe. Все работает, но без запроса на удаление объектов ...</p>]]></description>
			<author><![CDATA[null@example.com (Dr.Jekyll)]]></author>
			<pubDate>Sun, 21 Apr 2013 18:10:41 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=71594#p71594</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Контекстное меню безопасного удаления]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=71593#p71593</link>
			<description><![CDATA[<p><a href="http://forum.script-coding.com/viewtopic.php?pid=71589#p71589">Return</a></p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Sun, 21 Apr 2013 18:08:15 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=71593#p71593</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Контекстное меню безопасного удаления]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=71592#p71592</link>
			<description><![CDATA[<p>... ну может не так выразился, извиняюсь. Это MsgBox</p>]]></description>
			<author><![CDATA[null@example.com (Dr.Jekyll)]]></author>
			<pubDate>Sun, 21 Apr 2013 18:05:23 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=71592#p71592</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Контекстное меню безопасного удаления]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=71591#p71591</link>
			<description><![CDATA[<p>А что такое &quot;PopUp окна&quot;?</p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Sun, 21 Apr 2013 18:02:10 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=71591#p71591</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Контекстное меню безопасного удаления]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=71590#p71590</link>
			<description><![CDATA[<p>ОК. Добавляю в реестр этот регфайл:</p><div class="codebox"><pre><code>Windows Registry Editor Version 5.00

#####################
# ContextDeleteMenu #
#####################

[HKEY_CLASSES_ROOT\AllFilesystemObjects\shell\ContextDeleteMenu]
&quot;MUIVerb&quot;=&quot;Безопасное удаление&quot;
&quot;Icon&quot;=&quot;SHELL32.dll,131&quot;

[HKEY_CLASSES_ROOT\AllFilesystemObjects\shell\ContextDeleteMenu\command]
@=&quot;ContextDeleteMenu.exe&quot;</code></pre></div><p>Получаю в контекстном меню проводника пункт &quot;&quot;Безопасное удаление&quot;.</p><p>Далее в C:\Windows\ или C:\Windows\System32\ (не имеет значения) ложу программу SDelete.exe и рядом скомпилированный в exe скрипт AHK ContextDeleteMenu.exe который будет выдавать запрос на подтверждения удаления объектов и в случае подтверждения, будет передавать команду программе SDelete.exe на их удаление ...</p><p>Надеюсь, теперь внятно написал .... </p><p>Мигают (открываются и закрываются) поочередно все PopUp окна ... пока не остановишь вручную работу скрипта. Это в случае выделения и удаления двух и более объектов.</p>]]></description>
			<author><![CDATA[null@example.com (Dr.Jekyll)]]></author>
			<pubDate>Sun, 21 Apr 2013 17:58:28 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=71590#p71590</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Контекстное меню безопасного удаления]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=71589#p71589</link>
			<description><![CDATA[<div class="quotebox"><blockquote><p>я только учусь</p></blockquote></div><p>Вы выбрали отличный способ познать новое, игнорируя вопросы...<br /></p><div class="quotebox"><blockquote><p>Посмотрите так есть проблемы при показе выделенного?:</p></blockquote></div><div class="quotebox"><blockquote><p>Чего вы ждёте командой WinWaitClose, ContextDeleteMenu?</p></blockquote></div><div class="quotebox"><blockquote><p>Попробуйте просто RunWait, sdelete.exe -s &quot;%A_LoopField%&quot;, , hide</p></blockquote></div>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Sun, 21 Apr 2013 17:47:03 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=71589#p71589</guid>
		</item>
	</channel>
</rss>
