• Объявления

    • Garik66

      Пользователям форума   05.11.2017

      Прошу обратить внимание на эту тему (чтобы увидеть ссылку, войдите в объявление - нажмите на заголовок):   
Гость

Авто-подключение к нужному процессу, при открытой СЕ таблице

57 сообщений в этой теме

Своего скрипта у меня нет, допиливаю то что есть, но я не силён в Lua.

Скрытый текст

function CETimer1Timer(sender)
if getProcessIDFromProcessName("Tutorial-i386.exe") ~= nil then
openProcess("Tutorial-i386.exe")

timer1 = createTimer(nil,false)
timer_onTimer(timer1,ProcessName)
timer_setInterval(timer1,1000)
timer_setEnabled(timer1,true)
control_setCaption(UDF1_CELabel1, "Обучение СЕ запущено")
else
control_setCaption(UDF1_CELabel1, "Обучение СЕ не запущено")
end
end

 

 

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Скриншот

 

Скрытый текст

bandicam20_3790429_23944563.jpg

 

Скрипт

Скрытый текст

local flag = 0
function CETimer1Timer(sender)
if getProcessIDFromProcessName("Tutorial-i386.exe") ~= nil then
if flag == 0 then
openProcess("Tutorial-i386.exe")
UDF1.CELabel1.Font.Color = 0x004AA530
UDF1.CELabel1.Caption = "Process found"
flag = 1
end end
if getProcessIDFromProcessName("Tutorial-i386.exe") == nil then
UDF1.CELabel1.Font.Color = 0x002DA8A5
UDF1.CELabel1.Caption = "Process not found"
UDF1.CEEdit1.Text = ""
flag = 0
end
if getProcessIDFromProcessName("Tutorial-i386.exe") ~= nil then
if flag == 1 then
if readInteger('"Tutorial-i386.exe"+14D8F3') ~= nil then
UDF1.CEEdit1.Text = readInteger('"Tutorial-i386.exe"+14D8F3')
end end end end

 

 

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

Таймер на форме запущен, но связи со скриптом еще нет.

Изменено пользователем AntonVit
0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Такая же ошибка что и на моём видео, вылазит снова.

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

AntonVit всё сделал как обычно, потом сохранил таблицу на рабочий стол, и открыл её и снова та же ошибка вылазит.

Изменено пользователем Baracuda
0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вот так вот трейнер запустишь, там такая ошибка как попрёт.

Изменено пользователем Baracuda
0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
42 минуты назад, Baracuda сказал:

Не это не помогает 

У меня всё работает:

 

 

1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Чпок  Чпок  Тут не велика разница от чего подобное - работает же по одному и тому же принципу.

1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
16 минуту назад, Baracuda сказал:

Вот так вот трейнер запустишь, там такая ошибка как попрёт.

Ещё раз - найди указатели для Шага 2 для версии СЕ 6,6 и замени их в моём скрипте вот в этой строчке:

 Value = readInteger('["Tutorial-i386.exe"+2345D0]+480')
1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Всё понятно, в виде таблицы лучше не запускать, а запускать лучше как трейнер, тогда проблем нет , не какие ошибки не вылазят.

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Столько времени потерял, блин.

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
2 минуты назад, Baracuda сказал:

Всё понятно, в виде таблицы лучше не запускать, а запускать лучше как трейнер, тогда проблем нет , не какие ошибки не вылазят.

Так правильно: при запуске таблицей у тебя не открыта форма и поэтому нуль - ошибка.

 

Т.е., если хочешь в виде таблицы, сперва открой таблицу, но не активируй LUA-скрипт, открой форму и только потом активируй скрипт и вот тогда ошибки не будет.

Изменено пользователем Garik66
1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1

Изменено пользователем Baracuda
0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Всё я разобрался, как картинку можно вернуть.

Всем Большое спасибо за помощь, AntonVit Garik66 LIRW  Огромное вам спасибо.

 

Изменено пользователем Baracuda
0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ребята всем привет, у операционной системы есть свой процесс, как он называется, где я могу его посмотреть, кто знает.

Изменено пользователем Submarinа
0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У системы нет своего процесса. Все процессы запускаются в системе. Она для того и служит, чтобы запускать процессы. 

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Привет всем, пришлось возвратиться к старой теме про подключения процесса по таймеру, проблема такая, если в Trainer сделать процесс по таймеру, то по чему, то Trainer начинает кушать по чуть, чуть оперативной памяти, и с каждой минутой она увеличивается по немного, так же я проверил Trainer от {MrAntiFun} при запуске Trainer он начинает кушать оперативную память, и она увеличивается с каждой минутой, за 10 минут вырастает с 50 до 150-200 мегабайт и растёт я узнал в чём причина, если убрать таймер который постоянно работает в trainer, таймер работает даже когда игра не запущен, я проверил на своём Trainer оперативная память тоже растёт из-за таймера который постоянно включенный, если убрать таймер из Trainer, то оперативная память больше не увеличивается.  Как работает таймер я знаю, возможно ли процесс по таймеру сделать так пример, устанавливаешь таймер,в Trainer запускаешь Trainer, таймер начинает работать, после запускаешь игру, процесс игры автоматически находится, за счёт работающий таймера, и после нахождения процесса игры,чтобы таймер автоматически отключался. прошу помочь.Возможно ли так сделать. За ранние огромное спасибо за помощь.

 

В данный момент у меня такой код Lua. Могу ещё сделать, что-бы с интервалом процесс игры запускался  но это не то.

Скрытый текст

function CETimer1Timer(sender)
ProcssName="Arma3.exe"
if getProcessIDFromProcessName(ProcssName) ~= nil
then online = true
else online = false
end

if online then
getAutoAttachList().add(ProcssName)
UDF1.CELabel10.Caption = "Arma3.exe"
else
UDF1.CELabel10.Caption = "Arma3.exe"
UDF1.CELabel10.Caption = ""
end
end

 

 

Изменено пользователем Submarina
0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
12 минуты назад, Submarina сказал:

таймер автоматически отключался.

Ну как бы смотри ты сам ответил на свой вопрос же.. Отключай таймер при найденном процессе и все!
UDF1.CETimer1.Enabled = true \ false
Можно и такой сделать:

Скрытый текст

function proccseattach(timer)
t.Enabled = false
if getProccesIDFromProccesName("Process.exe") ~= nil then
repeat
OpenProcess("Process.exe")
until readInteger("Process.exe") ~= nil;
UDF1.CELabel1.Caption = FOUND
t.OnTimer = checkattach
end
t.Enabled = true
end

function checkattach(timer)
t.Enabled = false
if getProccesIDFromProccesName("Process.exe") == nil then
UDF1.CELabel1.Caption = NOT FOUND
t.OnTimer = processattach
end
t.Enabled = true
end

f=createForm(false)
t=createTimer(f);
t.Interval = 10
t.OnTimer = proccseattach

 

( возможны ошибки я спать хочу а править не хочу )


Вот у mranitfun так выглядит:

Скрытый текст

function CETimer1Timer(sender)
 if getProcessIDFromProcessName(ProcssName)  ~= nil
 then online =true
 else online = false
 end
if online then

UDF1.CETimer1.Enabled=false;
OpenProcess(ProcssName)

 control_setCaption(UDF1_CELabel8, "Game Is ON!")
 else
 control_setCaption(UDF1_CELabel8, "Game Is Off!")
 end
end

 

( Хотя ты его и скопировал )

1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У mranitfun я не чего не копировал, у меня он уже давно, я его сам написал, ориентировался я здесь в этой теме примерами на первой

страницы. Тот первый код который ты выложил, если я не ошибаюсь он есть на форуме Cheat Engine но у меня туда не заходит по че муто.

Изменено пользователем Submarina
0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Это код который ты дал,What228 он с форума http://forum.cheatengine.org/viewtopic.php?t=590284&sid=6560fc4b12cf98c8b2c68e744981671d LIRW ещё ссылку выкладывал на него. он полу рабочий,ошибок при запуске не выдаёт, жутко всё дёргается после запуска, и выключить не возможно.

Изменено пользователем Submarina
0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
1 час назад, Submarina сказал:

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

Я пользуюсь этим кодом и.. нет ни каких ошибок или дерганий. А про твой код я не сказал что ты скопировал его у mrantifun ( т.к. у него есть отключение таймера ) а то что сам код ты скопировал в этом нет ничего страшного просто факт что у тебя и так этот код.

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
9 часов назад, Submarina сказал:

Trainer он начинает кушать оперативную память,

Раньше не обращал на это внимание, но действительно память кушается, даже. если сделать просто СЕ-ный трейнер без таймера, при каждом включении и отключении любой опции трейнера - память съедается. По-видимому это проблема самого СЕ (не очищает память). Тоже самое происходит и в табличке СЕ - потихоньку память кушается. Вывод - нужно переходить на какой-нить ЯП и писать трейнеры самостоятельно.

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
12 часа назад, Submarina сказал:

Возможно ли так сделать.

@Submarina. обнаружил, что кушает постоянно память именно постоянное подключение к процессу, поэтому написал тебе другой вариант скрипта.

Вот скрипт, без отключения таймера ( с добавочным флагом). работает также, как и второй скрипт @what228. но и показывает, если процесс игры закрыть и переподключается к процессу игры заново. Оперативка теряется не постоянно. а при переподключениях к процессу.

Скрытый текст

function CETimer1Timer(sender)
 if getProcessIDFromProcessName('Tutorial-i386.exe')  ~= nil
 then online =true
 else online = false
 end
if online then
  if flag == 1 then
    OpenProcess('Tutorial-i386.exe')
    flag=0
  else
    control_setCaption(UDF1_CELabel1, "Game Is ON!")
  end
else
 control_setCaption(UDF1_CELabel1, "Game Is Off!")
 flag = 1
 end
end

 

 

1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Привет, я делал такой вариант, он мене не подошёл. Вот у меня есть другой вариант, он мене больше нравится. Но я не могу сделать тоже самое на выключения, то есть когда игру закрываешь то и процесс чтобы закрывался, в Trainer

запускаешь Trainer таймер начинает работать как только процесс игры находится таймер автоматически отключается.Это то что надо.

 

Скрытый текст

function myattach(timer)
  if getProcessIDFromProcessName("Arma3.exe") ~= nil then
    object_destroy(timer)
    openProcess("Arma3.exe")
    UDF1.CELabel10.Font.Color = 0x00FFF900
    UDF1.CELabel10.Caption = "Arma3.exe"  С открытием процесса всё в порядке, работает.
else

    UDF1.CELabel10.Font.Color = 0x423A35C7
    UDF1.CELabel10.Caption = ""           А вот закрытия процесса не работает, Тоесть когда игру закрываешь, то процеес должен закрыватся в Trainer, а он не закрывается в Trainer.


  end
end

t=createTimer(nil);
timer_setInterval(t,1000)
timer_onTimer(t,myattach)

 

Можно сделать чтобы при закрытии процесса игры, таймер запускался закрывал процесс в Trainer, и выключался. Только вариант What228 не подходит.

Изменено пользователем Submarina
0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
14 минуты назад, Submarina сказал:

А вот закрытия процесса не работает,

Так как ты проверишь работает у тебя процесс или нет, если у тебя таймер отключен?

Вот поэтому и написал скурипт. без отключения таймера.

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Это я понял, что таймер отключается когда процесс игры находится, вот потому и процесс не закрывается, потому что таймер отключён. 

вот я и говорю возможно ли, сделать чтобы при закрытии процесса игры, таймер запускался закрывал процесс в Trainer, и выключался. Только вариант What228 не подходит. По тому что таймер там работает всегда.

Изменено пользователем Submarina
0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!


Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.


Войти сейчас