Вверх ↑
Этот топик читают: Гость
Ответов: 15
Рейтинг: 0
#1: 2007-12-12 21:15:09 ЛС | профиль | цитата
Столкнулся с проблемой.
Параллельно с основным экзэшником должен запускается еще один лежащий в этой же папке.
В свойствах запуска второго экзе, перебрал все значения, но не смог добится что бы 2-й экзешник не выкидывал свою форму наверх.
Назначение основной проги - лаунчер игры, второй экзе - кликер (эмулирует нажатие и удержание кнопок мыши по клавишам F8 и F9).
Так вот, запускаем лаунчер, тут же стартует кликер и выводит свою форму поверх формы лаунчера. Как этого избежать?

И еще, как принудительно завершить процесс? Именно процесс, т.к. кликер можно свернуть и он остается только в трее. Т.е. тот же кликер ненужен после закрытия игры, и приходится закрывать 2 окна кликера и лаунчера, а это не очень удобно.

Как самому сделать кликер для мыши, я чесно говоря не додумался. Если поможете кликером буду рад.

Да и еще, как самым простым способом найти окно по названию и закрыть его?

Почему кстати программы лежащие в папке System32 винды не хотят запускатся? Хотел стандартной прогой taskkill.exe убить кликер и не смог. Т.е. если скопировать taskkill.exe в папку с лаунчером то все работает? а если не копировать то неработает. Путь к taskkill.exe прописывал по разному, и %systemroot%system32 и просто C:Windows.....


карма: 0

0
Администрация
Ответов: 15295
Рейтинг: 1519
#2: 2007-12-12 21:32:33 ЛС | профиль | цитата
user777 писал(а):
но не смог добится что бы 2-й экзешник не выкидывал свою форму наверх.

вариант - принудительно свернуть после запуска

user777 писал(а):
И еще, как принудительно завершить процесс?

WinTools->doClose
EnumProcess->doKill

user777 писал(а):
Как самому сделать кликер для мыши, я чесно говоря не додумался

MouseEvent

user777 писал(а):
Почему кстати программы лежащие в папке System32 винды не хотят запускатся?

команда запуска? схема?

user777 писал(а):
а если не копировать то неработает.

параметры программы задаются не верно
карма: 27
0
Ответов: 5446
Рейтинг: 323
#3: 2007-12-12 21:32:58 ЛС | профиль | цитата
Схему рисовать не буду из принципа, но идей набросаю.

1. Параллельный запуск: как минимум - должно сработать с Mode = SW_HIDE. В принципе, в MSDN описано ещё несколько (не реализованных в модуле ShellApi?) констант для Mode,
в частности - SW_SHOWMINNOACTIVE.

2. Можно найти (FindWindow) окно кликера (по заголовку или по оконному классу) и закрыть его через WinTools

3. Кликер - собирается на основе KeyHook и MouseEvent

2Dilma: опередил
карма: 1

0
Ответов: 8926
Рейтинг: 823
#4: 2007-12-12 21:55:06 ЛС | профиль | цитата
user777, перемещение мышки стрелками, нажатие кнопки F8, отпускание F9.
code_7938.txt
карма: 19

0
файлы: 1code_7938.txt [2.2KB] [319]
Ответов: 1926
Рейтинг: 172
#5: 2007-12-13 19:18:48 ЛС | профиль | цитата
Dilma писал(а):
команда запуска? схема?


А схема вот:
Add(Button,10638051,252,231)
{
Left=250
Top=230
link(onClick,4236369:doExec,[(296,237)(296,237)])
}
Add(WinExec,4236369,315,231)
{
FileName="C:WINDOWSegedit.exe"
}

Только тут из папки Виндовс, но без разницы: редактор реестра не запускается!
карма: 9
0
Ответов: 9906
Рейтинг: 351
#6: 2007-12-13 19:29:20 ЛС | профиль | цитата
3042 писал(а):
редактор реестра не запускается!

Не правда ваша дяденька - запускается

#sha
Add(Button,10638051,133,126)
{
Left=250
Top=230
link(onClick,4236369:doExec,[])
}
Add(WinExec,4236369,196,126)
{
FileName="C:WINDOWS\regedit.exe"
}
карма: 9

0
Администрация
Ответов: 15295
Рейтинг: 1519
#7: 2007-12-13 21:15:59 ЛС | профиль | цитата
видимо и taskkill.exe по той же причине не запускается
карма: 27
0
Ответов: 15
Рейтинг: 0
#8: 2007-12-13 21:36:14 ЛС | профиль | цитата
Через двойной слэш перед прогой? Интересно....
карма: 0

0
Ответов: 9906
Рейтинг: 351
#9: 2007-12-13 22:47:32 ЛС | профиль | цитата
user777 писал(а):
Интересно....

Некоторые даже и справку читают
HiAsm.chmОсновыСредаГлавное окно писал(а):
Примечания:

[color=brown][1] - В текстовых параметрах вы можете использовать специальные символы от до 255 и
. В случае, когда часть текста совпадает с написанием специального символа и его замена не нужна(например, строка c:windows
otepad.exe содержит спец символ
), вы можете использовать удвоенный и замена не будет произведена (например, c:windows\notepad.exe).[/color]

карма: 9

0
9
Сообщение
...
Прикрепленные файлы
(файлы не залиты)