View previous topic :: View next topic |
Author |
Message |
Моторокер

Joined: 06 May 2005 Posts: 1517 Location: г. Пермь (читается Перьмь)
|
(Separately) Posted: Wed Oct 11, 2006 16:14 Post subject: |
|
|
Хотел подсоединиться заново по FTP при ошибке подключения, отправляю сообщение.
const
cm_FtpConnect=550; // Connect to FTP
SendMessage(hParent, WM_USER + 51, cm_FtpConnect, 0)
Опа! Программа останавливается до нажатия кнопки Соединить или Отмена. А я ещё и Enter хотел нажать вдогонку.. Не получается. _________________ плагины для Total Commander, статьи Graphics Converter; NSCopy; SEO HTML; KillOK; Плагин на Delphi
ПармаСруб - строительство домов и бань в Перми |
|
Back to top |
|
 |
Belkin
Joined: 22 Feb 2005 Posts: 26
|
(Separately) Posted: Wed Oct 11, 2006 19:50 Post subject: |
|
|
Моторокер wrote: | Программа останавливается до нажатия кнопки Соединить или Отмена. А я ещё и Enter хотел нажать вдогонку.. |
Попробуй PostMessage вместо SendMessage. Должно помочь  |
|
Back to top |
|
 |
Моторокер

Joined: 06 May 2005 Posts: 1517 Location: г. Пермь (читается Перьмь)
|
(Separately) Posted: Mon Oct 30, 2006 09:19 Post subject: |
|
|
Работает. Теперь в Total Commander вместо ненужного сообщения «Сервер не найден» выводится FTP диалог. _________________ плагины для Total Commander, статьи Graphics Converter; NSCopy; SEO HTML; KillOK; Плагин на Delphi
ПармаСруб - строительство домов и бань в Перми |
|
Back to top |
|
 |
CaptainFlint

Joined: 14 Dec 2004 Posts: 6193 Location: Москва
|
(Separately) Posted: Sun Nov 12, 2006 19:49 Post subject: |
|
|
На случай, если кто-то не заметил:
Quote: | 15.09.06 Added: Support for accessibility tools (e.g. for blind users) to main lists+separate tree+sync+CD-Tree, allows to retrieve current line via LB_GETTEXT |
Т.о., семёрка наконец-то предоставляет простой и эффективный способ получения списка файлов из своей панели! Налетай, народ.  _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|
Back to top |
|
 |
Belkin
Joined: 22 Feb 2005 Posts: 26
|
(Separately) Posted: Mon Nov 13, 2006 09:37 Post subject: |
|
|
Да, обнаружил в твоем переводе History. Зверски обрадовался. Спасибо. |
|
Back to top |
|
 |
Yams

Joined: 17 Oct 2005 Posts: 115 Location: Тверь
|
(Separately) Posted: Mon Nov 13, 2006 20:50 Post subject: |
|
|
Quote: | Т.о., семёрка наконец-то предоставляет простой и эффективный способ получения списка файлов из своей панели! Налетай, народ. |
Ооо, спасибо огромное за информацию!!! Буду смотреть, изучать! Если это то, что думаю, буду просить всех пользователей тулсы моей переходить на седьмую версию!!! _________________ In Pascal we trust |
|
Back to top |
|
 |
iglezz
Joined: 08 Dec 2010 Posts: 48
|
(Separately) Posted: Mon Dec 20, 2010 23:31 Post subject: |
|
|
Как через SendMessage можно передать команде cm_List имя файла?
Такой вот скрипт на AutoIt не работает — открывает файл под курсором
Code: | $hwnd = WinGetHandle("Total Commander")
If NOT @error Then
DllCall("user32.dll", "int", "SendMessage", "hwnd", $hwnd , "int" , 1075, "int", 903 , "str", "c:\temp\test.txt" )
EndIf
|
|
|
Back to top |
|
 |
Вахмурка

Joined: 27 Dec 2004 Posts: 2586 Location: Большая деревня Москва
|
(Separately) Posted: Mon Dec 20, 2010 23:42 Post subject: |
|
|
Quote: | Как через SendMessage можно передать команде cm_List имя файла? | Насчет SendMessage не знаю, но указанная задача решается так: Code: | %COMMANDER_PATH%\Totalcmd.exe /o /S=L имя_файла |
_________________ Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон) |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
|
Back to top |
|
 |
iglezz
Joined: 08 Dec 2010 Posts: 48
|
(Separately) Posted: Tue Dec 21, 2010 00:01 Post subject: |
|
|
Эти варианты я и так знаю. Нужно именно через SendMessage/PostMessage. Гугление, увы, ничего не дало
Сгодится пример на любом языке, разберусь как-нибудь. |
|
Back to top |
|
 |
Вахмурка

Joined: 27 Dec 2004 Posts: 2586 Location: Большая деревня Москва
|
(Separately) Posted: Tue Dec 21, 2010 00:31 Post subject: |
|
|
Попробовал. Не у тебя одного ничего не получилось
Кстати, попробуй следующее: Code: | TOTALCMD#BAR#DATA
cm_List
%COMMANDER_PATH%\TOTALCMD.EXE
cm_List
903
| и посмотри на поля Parametrs и Start path получившейся кнопки. Наверное, это ж-ж неспроста.
Похоже, в такой постановке твоя задача тупо не решается. _________________ Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон) |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Tue Dec 21, 2010 00:34 Post subject: |
|
|
iglezz
А не проще написать для каких целей такая свистопляска? Может, другое решение найдётся. |
|
Back to top |
|
 |
iglezz
Joined: 08 Dec 2010 Posts: 48
|
(Separately) Posted: Tue Dec 21, 2010 00:35 Post subject: |
|
|
Вахмурка
Мне из собственного скрипта надо вызвать листер, что накладывает ограничения на используемые методы. А вариант с запуском totalcmd.exe /S=L просто медленный, но пока приходится его использовать.
Flasher
Прикручиванием просмотра разных файлов занимаюсь. Для тех случаев, когда плагины либо не устраивают чем-то, либо просто отсутствуют.
Методика такова: просматриваемый файл конвертером преобразуем во что-нибудь смотрибельное листером, после чего листером его и открываем. |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Tue Dec 21, 2010 00:52 Post subject: |
|
|
iglezz
Правильно ли я понял, что нужно на одну кнопку/команду повесить автоматический выбор при открытии любого файла под курсором либо листерного плагина, либо программы? Только не совсем ясно, при чём тут конвертер? Он тоже в этом скрипте фигурирует?
Или это надо на Alt+F3 (кн. "По типам файлов...") повесить? |
|
Back to top |
|
 |
iglezz
Joined: 08 Dec 2010 Posts: 48
|
(Separately) Posted: Tue Dec 21, 2010 01:21 Post subject: |
|
|
Flasher wrote: | iglezz
Правильно ли я понял, что нужно на одну кнопку/команду повесить автоматический выбор листерного плагина при открытии любого файла под курсором? А то я не совсем понимаю, что значит "преобразуем конвертером". |
Не совсем так.
Есть скрипт (пока это просто батник, готовящийся превратится в autoit-скрипт). Скрипту в качестве параметра передаётся имя файла под курсором. Скрипт проверяет расширение файла и, если это требуется, производит преобразование в один из удобоваримых для листера форматов. После чего, собственно, вызывается листер.
Для наглядности сам скрипт (подчищенный от отладочных echo и т.п.):
Code: | @echo off
setlocal enabledelayedexpansion
set paramstr=%1
set fext=%~x1
if not %fext%A==A set fext=%fext:.=%
set viewfile=%1
set tempfile=0
if "%fext%"=="svg" (
set tempfile=1
set viewfile=%TEMP%\tmp%DATE:.=%%RANDOM%.png
rsvg-convert.exe -o "!viewfile!" -f png -a -w 768 -h 384 "%~1"
goto viewInLister
)
:viewInLister
"%commander_path%\totalcmd.exe" %commander_cmdline% /O /S=L "%viewfile:"=%" & (
echo.
)
if %tempfile%==1 (
if exist "%viewfile:"=%" (
del /f /q "%viewfile:"=%"
)
)
|
|
|
Back to top |
|
 |
|