Страница 2 из 7

Добавлено: Пт сен 08, 2006 17:17
Igor_A.
2 Вахмурка:

Ну, это как подойти к вопросу!

Вот не секрет, что я создаю и распостраняю довольно популярную сборку на основе Тотала. Размер моей сборки уже распух до 15 метров. При этом в ней есть практически всё, что только можно представить из действительно нужных инструментов. Однако, я исхожу всегда из принципа, что если нужно внедрить в Тотал поддержку какой-либо функции, то делать это надо как можно меньшим объёмом добавляемых файлов. По этой причине в моей сборке все функции огромного Web-Drive исполняет микроскопический FTP-Drive, функции легендарного вьювера ACDSee - плагин вьювер Imagine размером раз в сто меньше, но ещё и лучше, чем ACDSee и т.д.
Вот потому то я и предпочту откомпилированный САМОДОСТАТОЧНЫЙ скрипт весом в 170 кило программе PowerPro с отдельным скриптом. Для минимизации размера сборки это очевидно.

Кроме того, я прекрасно знаю, что я лишаюсь автоматизировав F5 и F6, но ведь делаю я это сознательно, и отключаемым в ЛЮБОЙ момент скриптом. И автор Тотала мог бы это сделать опционально. И даже не через меню настроек, а только ручной правкой wincmd.ini для пущей безопасности. Ламер бы править не смог и не стал бы инишник для этого, а опытный, мог бы при желании.

Добавлено: Чт ноя 09, 2006 17:41
KarS
Скрипт для открытия в ТС новой вкладки, в которой откроется аплет "Мой компьютер". Автор - The gray Cardinal взято на http://forum.script-coding.info/viewtopic.php?id=58
Я повешал это на комбинацию Win+K

#sc025::
SendMessage, 1075, 3001,,, ahk_class TTOTAL_CMD
SendMessage, 1075, 2122,,, ahk_class TTOTAL_CMD
return

Добавлено: Ср май 09, 2007 21:51
kop_anton
Здравствуйте!
Стал недавно пользоваться AHK и вот набросал:

Код: Выделить всё

#InstallKeybdHook
~MButton::
IfWinNotActive, ahk_class TTOTAL_CMD
	return
Send, {LCtrl Down}{sc02C Down}
	return
~MButton Up::
IfWinNotActive, ahk_class TTOTAL_CMD
	return
Send, {LCtrl Up}{sc02C Up}
	return
Вроде работает!

Возникла проблема со скроллом, к примеру код:

Код: Выделить всё

~WheelDown:: 
IfWinNotActive, ahk_class TTOTAL_CMD
{
	Send, {WheelDown}
	return 
}
Send, {RAlt Down}{Down} 
   return
глючит, не понимаю в чем причина :cry:
Работает через раз, то есть 1 раз действительно команда выполняется.
а при нажатии во 2 раз глючит. Выяснил только то, что кнопка Alt висит нажатой в памяти, даже после выхода из скрипта.
Помогите, если знаете в чем дело.

Добавлено: Ср май 09, 2007 23:41
Alextp
kop_anton
Я бы забросил на оф. форум.

Там majkinetor, SansFritz - они в AHK гуру.

Добавлено: Чт май 10, 2007 00:58
DrShark
Не проблема.
Send, {RAlt Down}{Down}{RAlt Up}
Или чё-то типа этого (проверять нет времени, щас у меня дисконнект будет).

Добавлено: Чт май 10, 2007 20:36
kop_anton
Спастбо мужики, разобрался!
Теперь работает

Код: Выделить всё

*$WheelDown:: 
IfWinNotActive, ahk_class CorelDRAW 13.0
{
	Send, {WheelDown}
	return 
}
Send, {RAlt Down}{Down}{RAlt Up}
	return
*$WheelUp:: 
IfWinNotActive, ahk_class CorelDRAW 13.0
{
	Send, {WheelUp}
	return 
}
Send, {RAlt Down}{Up}{RAlt Up}
	return
короче заморочка была со *, без нее скрипт глючит. В Faq прочитал что *
запускает горячую клавишу, даже если удерживаются дополнительные модификаторы.
Оказалось дело все в этих модификаторах...
А вообще этот скрипт подошел к Corel, поэтому он и прописан

Добавлено: Пт май 11, 2007 01:56
Belkin
kop_anton
Мне не совсем понятно, как это связано с Тоталом, но вот так будет проще:

Код: Выделить всё

#IfWinActive, ahk_class CorelDRAW 13.0
WheelDown:: SendInput, !{Down}
WheelUp:: SendInput, !{Up}
#IfWinActive
А вообще, вопросы по AutoHotkey можно задать здесь.

Добавлено: Пт май 11, 2007 16:19
wOxxOm
кстати скроллер к Draw и Paint: http://recentfiles.sbn.bz/misc/AutoHotKey.ini - там через сообщения WM_SCROLL.
Есть, если кому надо скроллер в окнах VBA Editor

Добавлено: Пт май 11, 2007 18:05
Alextp
На вс. случай сообщаю:

все что касается TC и AutoHotkey, оно здесь:
http://www.ghisler.ch/wiki/index.php/AutoHotkey

Если вы написали что-то чего там нет, укажите мне, я добавлю. Или сами добавьте (нужна регистрация на том Вики!).

Добавлено: Вс май 13, 2007 22:28
kop_anton
Belkin

Спасибо, все окозолось куда проще, чем я думал. :)
Поправил все подобные скрипты.

З.Ы. Сейчас зарегистрируюсь, и буду там их мучить :D

Добавлено: Пт янв 11, 2008 19:11
UserTC
подскажите как записсать команду WM_USER+331 в PostMessage?

Добавлено: Сб янв 12, 2008 00:37
D1P
WM_USER = $0400 = 1024
WM_USER + 331 = 1355

Навернем "F7" и вспомним NC по "F9"

Добавлено: Чт июл 24, 2008 00:05
ОтецСергий
Создать папку с датой в имени по Shift+F7

Код: Выделить всё

DateName = %A_YYYY%-%A_MM%-%A_DD%
SetTitleMatchMode, 2
IfNotExist, %DateName%
{
WinWaitActive, Total Commander
Send, {F7}
WinWait, Total Commander, Отмена
Send, %DateName%{HOME}{SHIFTDOWN}{END}{SHIFTUP}
}
else
{
WinWaitActive, Total Commander
Send, %DateName%
}
Вызов скрипта реализовал из меню "Запуск"
(
Команда D:\Run\totalcmd\ahk\Создать папку с датой в имени.ahk
Параметр %P
)
настроив хоткей в конфигурации (S+F7=cm_UserMenu2).


Своё меню для папки

Код: Выделить всё

Menu, MyMenu, Add, Набрать заметку, mp1
Menu, MyMenu, Add, заглушка, mp2
Menu, MyMenu, Add  ; Add a separator line.
Menu, MyMenu, Add, Закрыть, mp3

Menu, MyMenu, Show
return

mp1:
FileName = Заметка'%A_Now%.txt
FileAppend, %A_YYYY%.%A_MM%.%A_DD% %A_Hour%:%A_Min%`n, %FileName%
Run, notepad %FileName%
WinWait, Безымянный - Блокнот
Send, ^{END}
WinWaitClose
return

mp2:
MsgBox Заглушка
return

mp3:
return
Вызов скрипта реализовал из меню "Запуск"
(
Команда D:\Run\AutoHotkey\AutoHotkey.exe
Параметр %PDirMenu.ahk
)
настроив хоткей в конфигурации (F9=cm_UserMenu3).

Файл DirMenu.ahk должен находиться в папке для которой создается меню.

Добавлено: Ср дек 10, 2008 15:39
kadvlad
Вот ещё пара полезных ahk-скриптов для Тотала (с оф.форума):

1) выделить/снять выделение в обеих панелях нажатием CTRL-ALT-(Num+)(Num-):

Код: Выделить всё

#SingleInstance, Force
asControlNames := "ListBox1,Button1,Button2,Button3,Button4,Edit1,ListBox1"
Return

#IfWinActive, ahk_class TTOTAL_CMD
	^!NumpadSub::
		Send, ^{NumpadSub}{TAB}^{NumpadSub}{TAB}
		Return
	^!NumpadAdd::
		Send, ^{NumpadAdd}{TAB}^{NumpadAdd}{TAB}
		Return
	^+!NumpadSub::
		Send, ^+{NumpadSub}{TAB}^+{NumpadSub}{TAB}
		Return
	^+!NumpadAdd::
		Send, ^+{NumpadAdd}{TAB}^+{NumpadAdd}{TAB}
		Return
#IfWinActive
2) когда Тотал свёрнут в трей -- переключение по ALT-TAB без нажания ENTER:

Код: Выделить всё

SetTimer subTimer, 100 
subTimer: 
If WinActive( "ahk_class switchwin2" ) 
{ 
SendInput, {Enter} 
} 
Return

Добавлено: Чт дек 11, 2008 11:09
kefirux
сразу после установки АутоХотКея вылетел Еррор в файле AutoHotkey.ahk:

#z::Run www.autohotkey.com

ругался на #z
причём этот файл я так и не нашёл)
я создал новый с таким же именем,
скрипт поменял на какойто пример из этого поста
который начинается на <!r::
но он ругается что it does not exist on current Keyboard Layer
я в замешательстве!