| View previous topic :: View next topic |
| Author |
Message |
Maximus

Joined: 07 Apr 2005 Posts: 927 Location: Украина, Кировоградская обл., г. Знаменка
|
(Separately) Posted: Mon Apr 23, 2007 18:37 Post subject: |
|
|
Обе вещи взаимосвязаны. Нужно отслеживать события, которые происходят с запущенными приложениями (закрытие, нажатие клавиши). Пробовал хуками - у меня не получилось.
1. Есть несколько вариантом возможного поведения:
1.1. Можно сделать копию файла перед тем, как Листер ее удалит. Но нужно уметь отслеживать момент закрытия приложения, чтобы потом этот файл удалить. Но в таком случае (допустим приложение - Ворд и пользователь изменил файл), кто будет предлагать переупаковать измененный файл?
1.2. Можно заблокировать файл, чтобы Листер его не удалил. Наверное это возможно, но тут опять надо исследовать, как будет себя вести Листер и стоит ли шкурка вычинки.
1.3. Можно просто прятать Листер и закрывать его после закрытия запущенного приложения. Это решит некоторые проблемы предыдущих двух вариантов.
В любом случае нужно следить за закрытием приложений. Я еще пока не знаю как это сделать.
2. Тут нужно следить за нажатиями клавишь. Хуками не получается. Другие варианты пока в голову не приходят. _________________ tcPhonebook|AppLoader|Українізація TC|Ultimate Calendar |
|
| Back to top |
|
 |
Worros
Joined: 19 Jan 2007 Posts: 1123
|
(Separately) Posted: Fri Feb 01, 2008 18:40 Post subject: |
|
|
| Maximus wrote: | 1.3. Можно просто прятать Листер и закрывать его после закрытия запущенного приложения. Это решит некоторые проблемы предыдущих двух вариантов.
В любом случае нужно следить за закрытием приложений. Я еще пока не знаю как это сделать. |
По-моему, то, что надо. http://www.codeproject.com/KB/threads/CreateProcessEx.aspx |
|
| Back to top |
|
 |
Maximus

Joined: 07 Apr 2005 Posts: 927 Location: Украина, Кировоградская обл., г. Знаменка
|
(Separately) Posted: Sun Feb 03, 2008 00:10 Post subject: |
|
|
Детально пока не посмотрел, но надо попробовать.
Сейчас я пользуюсь функцией CreateProcess. Из нее мне не удалось выудить ничего, чтобы следить за запущенным процессом.
Может с этой функцией получится. _________________ tcPhonebook|AppLoader|Українізація TC|Ultimate Calendar |
|
| Back to top |
|
 |
VadiMGP
Joined: 21 Mar 2007 Posts: 1625
|
(Separately) Posted: Mon Mar 24, 2008 11:22 Post subject: |
|
|
| Maximus wrote: | | Сейчас я пользуюсь функцией CreateProcess. | Последний папаметр этой функции - структура PROCESS_INFORMATION. В ней есть переменная hProcess - это хэндл запущенного процесса. Его можно использовать с любой функцией ожидания (например, WaitForSingleObject). |
|
| Back to top |
|
 |
Maximus

Joined: 07 Apr 2005 Posts: 927 Location: Украина, Кировоградская обл., г. Знаменка
|
(Separately) Posted: Mon Mar 24, 2008 14:51 Post subject: |
|
|
| VadiMGP wrote: | | Последний папаметр этой функции - структура PROCESS_INFORMATION. В ней есть переменная hProcess - это хэндл запущенного процесса. Его можно использовать с любой функцией ожидания (например, WaitForSingleObject). |
По этому поводу вопрос уже решен. _________________ tcPhonebook|AppLoader|Українізація TC|Ultimate Calendar |
|
| Back to top |
|
 |
Maximus

Joined: 07 Apr 2005 Posts: 927 Location: Украина, Кировоградская обл., г. Знаменка
|
(Separately) Posted: Thu Apr 03, 2008 22:04 Post subject: |
|
|
AppLoader 0.9 beta
Скачать/48.7 Кб/
Список изменений:
+ возможность загрузки файла приложением непосредственно из архива (Lister держится "в фоне"): ключ [Options], ListerState
* ключ [Options], CloseLister заменен ключом [Options], ListerState
* ключ [Options], WorkWithSelFiles более не используется; вместо него анализируется ключ файла настроек Total Commander [Configuration], Viewertype
+ удержание клавиши Shift при вызове Lister`а влияет на обработку значения ключа файла настроек Total Commander [Configuration], Viewertype заменяя действие "Файл под курсором - внутренней программой" на "Выделенные файлы - внутренней программой", или наоборот
Автор не я :) _________________ tcPhonebook|AppLoader|Українізація TC|Ultimate Calendar |
|
| Back to top |
|
 |
DeathStalker

Joined: 01 Sep 2006 Posts: 331 Location: Санкт-Петербург
|
(Separately) Posted: Fri Jun 06, 2008 22:28 Post subject: |
|
|
Нашел такой баг, если в имени файла программы более одной точки то выдается сообщение об ошибке, что файл не найден _________________ Гугль - это Матрица, чем меньше его спрашивать, тем слабее будут машины во время Великой Битвы
TC10.00b6 x86 Windows 10 x64 (Windows 7 x64) |
|
| Back to top |
|
 |
Maximus

Joined: 07 Apr 2005 Posts: 927 Location: Украина, Кировоградская обл., г. Знаменка
|
|
| Back to top |
|
 |
exirous
Joined: 02 Aug 2008 Posts: 2
|
(Separately) Posted: Sat Aug 02, 2008 20:13 Post subject: |
|
|
Вопрос.
В Плагинах очень плохо разбераюсь, но почитав форум насчёт AppLoader я настроил его правильно, но он всё равно не пашет.. или я просто не понимаю как им пользоватся?
Я почему-то понял, что это замена Viewer и Editor , которые по умолчанию вызываются по нажатии соответственно F3 и F4..
Изменил только ModalOnly, ScrolLockControl и добавил пару строк в Editor
| Code: |
[Options]
ScrollLockControl=0
ModalOnly=0
FindFiles=1
SyncDirs=1
TCWindow=1
QuickView=0
Lister4=0
OverWrite=0
WorkWithSelFiles=1
IfIsExtOnly=0
CloseLister=1
NextPlugin=1
ParamsMode=1
ParamsByExtMode=0
UseTCExtensions=0
CopySearchTextToClip=1
DefaultEditor=notepad
[Editor]
inf=notepad
bmp=mspaint
php=C:\Program Files\Notepad++\notepad++.exe
css,js,html=C:\Program Files\Rapid PHP 2006\rapidphp.exe
[HotKeys]
AppFromLister_key=123
AppFromLister_mod=C
DefSysAppFromLister_key=120
DefSysAppFromLister_mod=C
[TCPos]
IsSearchTextLeft=5
IsSearchTextTop=115
SearchTextLeft=85
SearchTextTop=113
|
|
|
| Back to top |
|
 |
Maximus

Joined: 07 Apr 2005 Posts: 927 Location: Украина, Кировоградская обл., г. Знаменка
|
|
| Back to top |
|
 |
exirous
Joined: 02 Aug 2008 Posts: 2
|
(Separately) Posted: Mon Aug 04, 2008 20:06 Post subject: |
|
|
| Попробовал ещё парочку Плагинов.. просто не один не пашет.. версия 7.02a 32-bit (14.09.2007)... |
|
| Back to top |
|
 |
DeathStalker

Joined: 01 Sep 2006 Posts: 331 Location: Санкт-Петербург
|
(Separately) Posted: Wed Apr 01, 2009 10:30 Post subject: |
|
|
еще такой баг - нельзя переименовать файл
1. запускаю Lister, который подгружает для просмотра любой плагин, например SynPlus, при этом плагин Apploader загружается тоже (он на первом месте в списке wlx плагинов).
2. не закрывая Lister'а пытаюсь переименовать любой файл, появляется сообщение "Прервано пользователем".
ЗЫ: 1. в пункте первом если Листером воспользоваться просмотром с отключенными плагинами, то ошибки не происходит.
2. Если отключить Aploader, то ошибки не происходит.
3. Ошибка кажется происходит из-за того что нажатие на Enter интерпретируется как двойное и операция по переименованию отменяется. _________________ Гугль - это Матрица, чем меньше его спрашивать, тем слабее будут машины во время Великой Битвы
TC10.00b6 x86 Windows 10 x64 (Windows 7 x64) |
|
| Back to top |
|
 |
Maximus

Joined: 07 Apr 2005 Posts: 927 Location: Украина, Кировоградская обл., г. Знаменка
|
(Separately) Posted: Wed Apr 01, 2009 11:38 Post subject: |
|
|
Не удалось у себя такого воспроизвести. Переименовать открытый файл получается без проблем.
| DeathStalker wrote: | | 2. не закрывая Lister'а пытаюсь переименовать любой файл, появляется сообщение "Прервано пользователем". |
| DeathStalker wrote: | | 3. Ошибка кажется происходит из-за того что нажатие на Enter интерпретируется как двойное и операция по переименованию отменяется. | Очень на то похоже. Попробуй Enter на цифровой клавиатуре. Посмотри, может какие-то программы типа всяких Switcher-ов мешают тебе нормально работать.
| DeathStalker wrote: | ЗЫ: 1. в пункте первом если Листером воспользоваться просмотром с отключенными плагинами, то ошибки не происходит.
2. Если отключить Aploader, то ошибки не происходит. | Странно. Не могут влиять плагины на нажатие Enter в файловой панели. _________________ tcPhonebook|AppLoader|Українізація TC|Ultimate Calendar |
|
| Back to top |
|
 |
DeathStalker

Joined: 01 Sep 2006 Posts: 331 Location: Санкт-Петербург
|
(Separately) Posted: Wed Apr 01, 2009 14:53 Post subject: |
|
|
Действительно такой эффект проходит если выгрузить пунто свичер, повидимому он как-то в связке с данным плагином вызывает двойное нажатие на enter. _________________ Гугль - это Матрица, чем меньше его спрашивать, тем слабее будут машины во время Великой Битвы
TC10.00b6 x86 Windows 10 x64 (Windows 7 x64) |
|
| Back to top |
|
 |
DeathStalker

Joined: 01 Sep 2006 Posts: 331 Location: Санкт-Петербург
|
(Separately) Posted: Wed Apr 01, 2009 15:22 Post subject: |
|
|
Скачал последнюю версию пунто свичера, ошибка больше не повторяется. _________________ Гугль - это Матрица, чем меньше его спрашивать, тем слабее будут машины во время Великой Битвы
TC10.00b6 x86 Windows 10 x64 (Windows 7 x64) |
|
| Back to top |
|
 |
|