Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Total Commander (Часть 8)

Модерирует : gyra, Maz

articlebot (20-03-2016 21:01): Обсуждение продолжается в части 9  Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

   

LonerDergunov



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Тут ещё один нюанс.  Если просто нажать на кнопку, то открывается DreamLair.net в IE

Только если в корне каталога с Тоталом отсутствует указанный файл. Если он присутствует - ничего не происходит - никаких окон не появляется.
А что происходит при аналогичном нажатии оригинальной версии Кнопки? Открывается окно со случайно (!) сгенерированным номером ошибки и кнопками Отмена и Справка
 

Цитата:
Лучше бы диалог настроек так вызывался

Лучше. Будут полные исходники - будем посмотреть.
Нет исходников - увы, разговоры о кардинальной переработке скрипта можно и не вести.
 

Цитата:
если кнопка расположена на панели, которая "в виде меню", то с клавишей ALT её  можно использовать, только переключив панель в обычный вид

Решается созданием отдельной клавиши и эмуляцией нажатия. У меня в меню все команды Кнопки (настройки, архивация и т.д.) навешаны на скрипты.

Код:
[em_7Zip_DreamButton]
cmd=Button.exe
param=%L
path=%commander_path%\Utilities\DreamButton%DreamOSBits%\
menu=DreamButton 7-Zip 2013

 
AHK-скрипт тогда выглядит следующим образом - нажимается Alt, вызывается команда, ожидается появление окна, отжимается Alt:

Код:
#NoEnv
#NoTrayIcon
#SingleInstance force
 
Send {Alt Down}
Sleep, 20
SendTCUserCommand("em_7Zip_DreamButton")
WinWait, ahk_class AutoIt v3 GUI
Send {Alt Up}
 
SendTCUserCommand(Command) ; string
{
  If  Command <>
    {
      VarSetCapacity(CopyDataStruct, 3*A_PtrSize, 0)  ; Set up the structure's memory area.
      dwData := Asc("E") + 256 * Asc("M")
      NumPut(dwData, CopyDataStruct, 0)
      cbData := StrPutVar(Command, Command, "cp0")
      NumPut(cbData, CopyDataStruct, A_PtrSize)  ; OS requires that this be done.
      NumPut(&Command, CopyDataStruct, 2*A_PtrSize)  ; Set lpData to point to the string itself.
      SendMessage, 0x4a, 0, &CopyDataStruct,, ahk_class TTOTAL_CMD ; 0x4a is WM_COPYDATA. Must use Send not Post.
    }
}
 
StrPutVar(string, ByRef var, encoding)
{
    ; Ensure capacity.
    VarSetCapacity( var, StrPut(string, encoding) * ((encoding="utf-16"||encoding="cp1200") ? 2 : 1) )
    ; Copy or convert the string.
    return StrPut(string, &var, encoding)
}

 

Цитата:
Ну или хотя бы сделать, что вместо IE открывался браузер по-умолчанию.

Запускается простая команда: explorer.exe с сайтом в качестве параметра. Как запустить браузер по-умолчанию?

Всего записей: 2972 | Зарегистр. 11-07-2007 | Отправлено: 05:42 29-08-2013 | Исправлено: LonerDergunov, 16:44 29-08-2013
   

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Программы » Total Commander (Часть 8)
articlebot (20-03-2016 21:01): Обсуждение продолжается в части 9


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru