1 (изменено: Malcev, 2012-02-04 09:48:44)

Тема: AHK: Запуск скрипта другим эксешником

Возможно ли такое.
Объясняю ситуацию.
Я подключаюсь удалённо к компьютеру и во время подключения на удалённом компьютере запускасется эксешник этой программы удалённого доступа.
То есть его видно и в application и в процессах
Так вот, я хочу сделать  чтобы вместе с этим эксешником запускался мой скрипт.
Возможно ли это где-нибудь прописать?
Желательно без запуска других скриптов постоянно следящих за процессами.

2

Re: AHK: Запуск скрипта другим эксешником

Такая идея: скомпилировать скрипт в ехе, дать ему имя прог. уд. доступа и подсунуть вместо неё. А скрипт, запустившись, уже запустит и программу. Файл программы тоже можно переименовать или положить в другое место.

3 (изменено: Malcev, 2012-02-04 10:19:35)

Re: AHK: Запуск скрипта другим эксешником

Это было бы возможно, но боюсь если придёт проверка, то у меня возникнут большие проблемы.
Подумают, что я крякер, конфискуют обородувание, да и посадят до кучи.

4

Re: AHK: Запуск скрипта другим эксешником

В таком случае кто/что будет запускать ваш скрипт? Программа этого делать не будет, верно? Следите за процессами тогда.

5

Re: AHK: Запуск скрипта другим эксешником

Можно дописать код запуска скрипта на EP экзешника. Тогда поймать будет немного сложнее .

6

Re: AHK: Запуск скрипта другим эксешником

Может мой вопрос покажется глупым и не понятным, но мне это очень нужно! У меня есть программа, на которую поступают звонки с обычных телефонов - мультифон называется. И вот мне нужно, когда мне поступает звонок, я нажимаю "ответить", и в это время мне надо, чтобы автоматом запускался музыкальный файл на компьютере (автоответ это).
Мне это надо потому что я инвалид, и разговариваю плохо, поэтому я и сделала автоответ. А программу специальную не могу найти, чтобы автоматически отвечала на звонки и запускался автоответ. Я конечно могу нажать поочереди: сначала ответить на звонок, потом запустить этот файл. Но это получается долго. И пока я запускаю этот файл автоответа, люди прекращают звонить.
Можно ли сделать в программе Hotkey такую команду: когда мне кто-то звонит, я отвечаю на этот звонок, и автоматически запускается музыкальный файл? Помогите мне, пожалуйста, с этим вопросом!

7

Re: AHK: Запуск скрипта другим эксешником

Марина
А как вы запускаете этот музыкальный файл?

8 (изменено: Irbis, 2012-03-26 18:46:26)

Re: AHK: Запуск скрипта другим эксешником

Марина, для каждого вопроса надо создавать отдельную тему.

Hotkey, $LButton, , T2  

my_answer =   ; здесь прописать путь и название проигрываемого файла,
;               чтоб не выбирать при каждом запуске скрипта
if (my_answer == "")
   FileSelectFile, my_answer, 3
MsgBox Win + Alt + левая клавиша мыши по кнопке ответа`nПривяжет автопроигрывание к этой кнопке
#!LButton::
   MouseGetPos,,, TW, TC
   MsgBox Автопроигрывание включено.
return

$LButton::
   MouseGetPos,,, CW, CC
   if ((TW == CW) && (TC == CC))
   {
       Click down
	   SoundPlay, %my_answer%
       MsgBox, 4096,, OK - остановить
       SoundPlay, dummyfile.$$$
   }
   else Click down
return
 
LButton UP:: Click up

Для написания скрипта, в котором не нужно выбирать при запуске кнопку, нужны более точные данные, которые можно получить с помощью WinSpy:
заголовок или класс окна, classNN кнопки (и/или её текст).

9

Re: AHK: Запуск скрипта другим эксешником

YMP пишет:

Марина
А как вы запускаете этот музыкальный файл?

Она у меня стоит на рабочем столе ярлычком, я сделала для него горячие клавиши (через  свойство). Ну и когда мне поступает звонок, я мышкой нажимаю на "ответить" и горячими клавишами открываю этот файл. Ну недостаточна сразу открывается этот файл, и человек, который звонит, так и говорит : "алло, алло". Хотелось бы чтоб файл открывался сразу после того, как я нажму ответить, чтобы не нажимать дополнительно горячие клавиши.

10

Re: AHK: Запуск скрипта другим эксешником

Irbis пишет:

Марина, для каждого вопроса надо создавать отдельную тему.

Hotkey, $LButton, , T2  

my_answer =   ; здесь прописать путь и название проигрываемого файла,
;               чтоб не выбирать при каждом запуске скрипта
if (my_answer == "")
   FileSelectFile, my_answer, 3
MsgBox Win + Alt + левая клавиша мыши по кнопке ответа`nПривяжет автопроигрывание к этой кнопке
#!LButton::
   MouseGetPos,,, TW, TC
   MsgBox Автопроигрывание включено.
return

$LButton::
   MouseGetPos,,, CW, CC
   if ((TW == CW) && (TC == CC))
   {
       Click down
	   SoundPlay, %my_answer%
       MsgBox, 4096,, OK - остановить
       SoundPlay, dummyfile.$$$
   }
   else Click down
return
 
LButton UP:: Click up

Для написания скрипта, в котором не нужно выбирать при запуске кнопку, нужны более точные данные, которые можно получить с помощью WinSpy:
заголовок или класс окна, classNN кнопки (и/или её текст).

Я вас не поняла. Я в программирование не понимаю,  и я не знаю, как создавать скрипты.

11

Re: AHK: Запуск скрипта другим эксешником

Ладно, создавать ничего не нужно. Просто, чтоб запустить скрипт, нужно скопировать приведенный мной текст от Код (AutoHotKey): до конца кода, сохранить его в блокноте в кодировке UTF-8(это обязательно), с расширением АНК. например, автоответчик.ahk
И чтоб запустить его как обычный исполняемый файл, на компьютере нужен AutoHotKey

12 (изменено: Марина, 2012-03-26 19:59:18)

Re: AHK: Запуск скрипта другим эксешником

Irbis пишет:

Ладно, создавать ничего не нужно. Просто, чтоб запустить скрипт, нужно скопировать приведенный мной текст от Код (AutoHotKey): до конца кода, сохранить его в блокноте в кодировке UTF-8(это обязательно), с расширением АНК. например, автоответчик.ahk
И чтоб запустить его как обычный исполняемый файл, на компьютере нужен AutoHotKey

Вроде получилось, автопроигрватель включен. Но как сделать, чтобы он запускался при звонке?

13

Re: AHK: Запуск скрипта другим эксешником

Если вы выбрали файл, который запускаете при ответе, и затем нажали Win + Alt + левая клавиша мыши на кнопке, которой отвечаете на звонок,
то появится сообщение "Автопроигрывание включено". После этого простое нажатие мышкой на кнопку "ответить" должно начать разговор
и одновременно запустить проигрывание звукового файла.

14 (изменено: creature.ws, 2012-03-26 21:31:09)

Re: AHK: Запуск скрипта другим эксешником

А зачем сравнивать строки регистрозависимо? Обычного «=» недостаточно?

15

Re: AHK: Запуск скрипта другим эксешником

Irbis пишет:

Если вы выбрали файл, который запускаете при ответе, и затем нажали Win + Alt + левая клавиша мыши на кнопке, которой отвечаете на звонок,
то появится сообщение "Автопроигрывание включено". После этого простое нажатие мышкой на кнопку "ответить" должно начать разговор
и одновременно запустить проигрывание звукового файла.

Я всё сделала, автоответчик готов. Но как только  его вставить в программу Мультифон? Сейчас попыталась проверить, позвонили себе, ответила, этот  файл не открывается

16 (изменено: Irbis, 2012-03-26 23:34:41)

Re: AHK: Запуск скрипта другим эксешником

Значит, надо проверять работу непосредственно с программой, возможно там нестандартные контролы. Я проверял на обычном Windows калькуляторе, делал привязку на "=" , все работало.
К сожалению, программы Мультифон нет, проверить нет возможности.

creature.ws пишет:

А зачем сравнивать строки регистрозависимо? Обычного «=» недостаточно?

creature.ws, как-то не задумывался над этим. Переменная my_answer сравнивается с пустой строкой, т.е. регистр абсолютно неважен.
А в остальном, как мне кажется, "регистрозависимо" означает лишь, что строки просто сравниваются ""as is", то бишь посимвольно без доп.приведения
к одному регистру  -> меньше лишних операций, быстрее работает код. Вряд ли тут будет неоднозначность, потому что сомневаюсь, чтоMouseGetPos
сможет записать в переменные один раз 0x1ea5bd и Button24, к примеру, а в другой раз - 0x1Ea5BD и BUtTOn24

17

Re: AHK: Запуск скрипта другим эксешником

ALT & LButton:: 
Click
SoundPlay, C:\1.mp3

При нажатии ALT+ левая кнопка мыши посылается нажатие левой кнопкой мыши и мгновенное проигрывание вашего файла.
Если нужна задержка между этими действиями то вот так

ALT & LButton:: 
Click
Sleep, 200
SoundPlay, C:\1.mp3

Где Sleep, 200 - задержка в 200 микросекунд.

18

Re: AHK: Запуск скрипта другим эксешником

Malcev пишет:

...
При нажатии ALT+ левая кнопка мыши посылается нажатие левой кнопкой мыши и мгновенное проигрывание вашего файла.
Если нужна задержка между этими действиями то вот так

ALT & LButton:: 
Click
Sleep, 200
SoundPlay, C:\1.mp3

Где Sleep, 200 - задержка в 200 микросекунд.

Собствено, Марина и попросила, чтоб воспроизведение запускалось одновременно с нажатием кнопки "ответить". Вряд ли задерка в 200 миллисекунд что-то существенно изменит.
(Имеется в виду, что проигрываемый файл априори имеет длину >> 200 мс). Проблема в том, что он вообще не проигрывается.

19

Re: AHK: Запуск скрипта другим эксешником

Ещё вариант незамысловатый: при существующем окне «Мультифона» двойное нажатие левой клавиши Ctrl отожмёт кнопку "Ответить" и запустит воспроизведение автоответа.
Надо сказать, что прописанные в коде название кнопки ("Ответить") и заголовок окна ("Мультифон") — предположительные.


SetTitleMatchMode, 2
#SingleInstance Force

my_answer =  ;Путь до файла автоответа; пример — F:\MUSIC\file.wav

#IfWinExist, Мультифон
~LControl::
  If LControl_Presses > 0
  {
    LControl_Presses += 1
    Return
  }
  LControl_Presses = 1
  SetTimer, MultiFonLabel, 300
  Return

MultiFonLabel:
  SetTimer, MultiFonLabel, Off
  If LControl_Presses = 2
  {
    ControlSend, Ответить, {Space}, Мультифон

    SoundPlay, %my_answer%
    MsgBox, 4096, %a_space%, Остановить возпроизведение
    SoundPlay, dummyfile.$$$
  }
  LControl_Presses = 0
  Return
#IfWinExist

20

Re: AHK: Запуск скрипта другим эксешником

Собствено, Марина и попросила, чтоб воспроизведение запускалось одновременно с нажатием кнопки "ответить". Вряд ли задерка в 200 миллисекунд что-то существенно изменит.
(Имеется в виду, что проигрываемый файл априори имеет длину >> 200 мс). Проблема в том, что он вообще не проигрывается.

Твой вариант скрипта вряд ли применим.
Так как скорей всего кнопка "ответить" в программе для каждого звонящего новая (если проводить аналогию со скайпом).

21 (изменено: DD, 2012-03-27 03:43:50)

Re: AHK: Запуск скрипта другим эксешником

В таком разе такой альтернат:


#SingleInstance Force
SetTitleMatchMode, 2

my_answer =  ;Путь до файла автоответа; пример — F:\MUSIC\file.wav

#If MouseIsOver("Ответить")
~LButton::
  {
    SoundPlay, %my_answer%
    MsgBox, 4096, %a_space%, Остановить воспроизведение
    SoundPlay, dummyfile.$$$
    Return
  }
  RETURN
#If

MouseIsOver(CtrlOrClss) {
  MouseGetPos, xC, yC, hwndWin, ControlName
  ControlGetText, ControlText, %ControlName%, ahk_id %hwndWin%
  return InStr(ControlText, CtrlOrClss)
}

Может быть не совсем удобен тем, что реагирует на любую кнопку содержащую текст "Ответить".

22

Re: AHK: Запуск скрипта другим эксешником

Irbis пишет:

как-то не задумывался над этим. Переменная my_answer сравнивается с пустой строкой, т.е. регистр абсолютно неважен.
А в остальном, как мне кажется, "регистрозависимо" означает лишь, что строки просто сравниваются ""as is", то бишь посимвольно без доп.приведения
к одному регистру  -> меньше лишних операций, быстрее работает код. Вряд ли тут будет неоднозначность, потому что сомневаюсь, чтоMouseGetPos
сможет записать в переменные один раз 0x1ea5bd и Button24, к примеру, а в другой раз - 0x1Ea5BD и BUtTOn24

Неоднозначности определённо нет.

В первом случае — сравнение с пустой строкой -> различия «=» и «==» несущественны.
Во втором — сравнение чисел ->  различия «=» и «==» несущественны.
В итоге имеем просто лишний символ в операторе

23

Re: AHK: Запуск скрипта другим эксешником

creature.ws пишет:
Irbis пишет:

как-то не задумывался над этим. Переменная my_answer сравнивается с пустой строкой, т.е. регистр абсолютно неважен.
А в остальном, как мне кажется, "регистрозависимо" означает лишь, что строки просто сравниваются ""as is", то бишь посимвольно без доп.приведения
к одному регистру  -> меньше лишних операций, быстрее работает код. Вряд ли тут будет неоднозначность, потому что сомневаюсь, чтоMouseGetPos
сможет записать в переменные один раз 0x1ea5bd и Button24, к примеру, а в другой раз - 0x1Ea5BD и BUtTOn24

Неоднозначности определённо нет.

В первом случае — сравнение с пустой строкой -> различия «=» и «==» несущественны.
Во втором — сравнение чисел ->  различия «=» и «==» несущественны.
В итоге имеем просто лишний символ в операторе

Не  понимаю я ваши термины программирования. Может вам  дать ссылку мультифона? Вы его скачаете, и попробуете его настроить? А потом мне все объясните. И вообще, у вас есть скайп? Может через него вы меня проинструктируете?

24 (изменено: creature.ws, 2012-03-27 09:44:39)

Re: AHK: Запуск скрипта другим эксешником

Так как выше цитата моего сообщения, отвечу на ваши вопросы:
   Нет, не нужно мне давать ссылку мультифона; я его не скачаю и не попробую настроить; нет, скайпа нет; нет, увы, не проинструктирую.

25

Re: AHK: Запуск скрипта другим эксешником

DD пишет:

В таком разе такой альтернат:


#SingleInstance Force
SetTitleMatchMode, 2

my_answer =  ;Путь до файла автоответа; пример — F:\MUSIC\file.wav

#If MouseIsOver("Ответить")
~LButton::
  {
    SoundPlay, %my_answer%
    MsgBox, 4096, %a_space%, Остановить воспроизведение
    SoundPlay, dummyfile.$$$
    Return
  }
  RETURN
#If

MouseIsOver(CtrlOrClss) {
  MouseGetPos, xC, yC, hwndWin, ControlName
  ControlGetText, ControlText, %ControlName%, ahk_id %hwndWin%
  return InStr(ControlText, CtrlOrClss)
}

Может быть не совсем удобен тем, что реагирует на любую кнопку содержащую текст "Ответить".

Создала я ваш код, но как сделать его активным, включить, чтобы  срабатывал на кнопку "ответить"?

26

Re: AHK: Запуск скрипта другим эксешником

У вас там вообще может не быть такой кнопки.
Запустите autoit windows spy
Наведите курсором на кнопку "ответить" и сделайте принтскрин того, что показывает autoit windows spy.

27

Re: AHK: Запуск скрипта другим эксешником

Malcev пишет:

У вас там вообще может не быть такой кнопки.
Запустите autoit windows spy
Наведите курсором на кнопку "ответить" и сделайте принтскрин того, что показывает autoit windows spy.

Как и где запустить autoit windows spy?

28

Re: AHK: Запуск скрипта другим эксешником

http://forum.script-coding.com/viewtopic.php?id=6322

29

Re: AHK: Запуск скрипта другим эксешником

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

30

Re: AHK: Запуск скрипта другим эксешником

Я же написал простейший для вас вариант

ALT & LButton:: 
Click
SoundPlay, C:\1.mp3

Теперь если вы нажмёте левой кнопкой мыши куда угодно, зажав ALT, то у вас проиграется мелодия которая находится в  C:\1.mp3
Чем он вас не устраивает?

31

Re: AHK: Запуск скрипта другим эксешником

Malcev пишет:

Я же написал простейший для вас вариант

ALT & LButton:: 
Click
SoundPlay, C:\1.mp3

Теперь если вы нажмёте левой кнопкой мыши куда угодно, зажав ALT, то у вас проиграется мелодия которая находится в  C:\1.mp3
Чем он вас не устраивает?

Да, да, да! Получилось!  Спасибо вам огромное  за такую помощь!!! Вы меня очень выручили!!! А для других файлов я могу применять этот вариант? Только в этом коде надо менять названия файла и клавишу, да?

32

Re: AHK: Запуск скрипта другим эксешником

Да.
Пожалуйста.

33

Re: AHK: Запуск скрипта другим эксешником

Malcev пишет:

Я же написал простейший для вас вариант

ALT & LButton:: 
Click
SoundPlay, C:\1.mp3

Теперь если вы нажмёте левой кнопкой мыши куда угодно, зажав ALT, то у вас проиграется мелодия которая находится в  C:\1.mp3
Чем он вас не устраивает?

А можно в этот код еще добавить так, чтобы еще и звук прибавлялся где-то на 50%?

34

Re: AHK: Запуск скрипта другим эксешником

ALT & LButton:: 
Click
SoundSet, 50   ; меняете на нужный вам процент
SoundPlay, C:\1.mp3

35

Re: AHK: Запуск скрипта другим эксешником

Malcev пишет:
ALT & LButton:: 
Click
SoundSet, 50   ; меняете на нужный вам процент
SoundPlay, C:\1.mp3

Огромное, огромное вам  спасибо!!!!!!! Вы не представляете, какую помощь вы мне оказали!!!!!!! Я  так давно искала такое!!!!!!!!!!!!
Вот у меня еще один вопрос. Мой виндус устроен так, что когда выходит какое-то окно ( ну например, свойство "Мой компьютер"), стрелка мышки сразу автоматически встает на кнопку "ок". Вы, наверно, это знаете, да?  Так вот, А когда появляется окно, в котором мне звонят, там стрелка не вставится автоматически на "ответить". Вот можно ли самостоятельно настроить так,  чтобы стрелка автоматически вставала на ту кнопку в появившиемся окне, на которую мне надо?

36

Re: AHK: Запуск скрипта другим эксешником

Марина, для каждого вопроса надо создавать отдельную тему.

37

Re: AHK: Запуск скрипта другим эксешником

Malcev пишет:

Марина, для каждого вопроса надо создавать отдельную тему.

Вроде создала отдельную тему на этой странице http://forum.script-coding.com/viewtopic.php?id=7016  правильно?

38 (изменено: Марина, 2012-03-31 10:46:40)

Re: AHK: Запуск скрипта другим эксешником

Malcev пишет:
ALT & LButton:: 
Click
SoundSet, 50   ; меняете на нужный вам процент
SoundPlay, C:\1.mp3

А можно еще в этот код добавить, чтобы и еще  выходило окно общей громкости?
http://s019.radikal.ru/i605/1203/20/433bd912b58a.jpg

39

Re: AHK: Запуск скрипта другим эксешником

ALT & LButton:: 
Click
SoundSet, 50   ; меняете на нужный вам процент
SoundPlay, C:\1.mp3
Run, sndvol32.exe

40

Re: AHK: Запуск скрипта другим эксешником

DD пишет:
ALT & LButton:: 
Click
SoundSet, 50   ; меняете на нужный вам процент
SoundPlay, C:\1.mp3
Run, sndvol32.exe

Да, получилось!!!!!!!! Спасибо  огромное!!!!!!!!!!!
Еще бы хотелось сам звук, где прибавляешь, был бы сразу активным. Я его прибавляю и убавляю стрелками на клавиатуре. Когда открываешь общую громкость, там активно кнопка "динамики", а можно сделать, чтобы было сразу активна громкость?
http://s019.radikal.ru/i643/1203/4a/88215b76df0d.jpg

41

Re: AHK: Запуск скрипта другим эксешником

ALT & LButton:: 
Click
SoundSet, 50   ; меняете на нужный вам процент
SoundPlay, C:\1.mp3
Run, sndvol32.exe
WinWaitActive, ahk_class Volume Control
Send, {TAB}

42

Re: AHK: Запуск скрипта другим эксешником

Malcev пишет:
ALT & LButton:: 
Click
SoundSet, 50   ; меняете на нужный вам процент
SoundPlay, C:\1.mp3
Run, sndvol32.exe
WinWaitActive, ahk_class Volume Control
Send, {TAB}

Ой, я не знаю, как мне вас благодарить!!!!!!!!! Вы для меня столько удобных команд  сделали!!!!!!!! Вы просто не представляете, как это для меня важно!!!!!!!!! Просто супер сейчас у меня стало!!!!!!!!! Конечно с мышкой  не получилось, чтобы сама вставала на кнопку "ответить", за то самое главное очень успешно сделали!!!!!!! Еще раз    ГРОМАДНОЕ, ВАМ ВСЕМ,  СПАСИБО!!!!!!!!!!  Вы сделали очень доброе дело для   инвалида!!!!!!!!!! За это вам вернется добро вдвойне!!!!!!!!!