Логирование

dryunja2112

Участник
Автор темы
24
1
Задался вопросом. Можно ли как-то записывать все действия или хотя бы переменные, которые ввел пользователь ахк. И чтобы владелец смог увидеть это.
 

degrando

Известный
362
127
Задался вопросом. Можно ли как-то записывать все действия или хотя бы переменные, которые ввел пользователь ахк. И чтобы владелец смог увидеть это.
можно, например я делал так:
Код:
mabel6:
unBlockChatInput()
if rangs < 9
{
addChatMessageEx("{F6789A}", "[AutoMedic | Grand]:{FFFFFF} Данная функция доступна с 9 ранга.")
    return
}
SendChat("/do Пакет с бейджиком и формой в руке.")
sleep 1200
SendChat("/me доcтал" zh " бейджик и форму с пакета, после чего передал" zh " их человеку")
sleep 1200
SendChat("Поздравляю с новой должностью, так держать!")
sleep 1200
SendChat("/giverank  " id "")
addChatMessageEx("{F6789A}", "- Riccardo Benedict: {FFFFFF}У Вас есть 7 секунд чтобы выдать ранг!")
Sleep 7000
SendChat("/setskin " id "")
FileAppend, Повышение || Кто: %name% || Кого: %nick% || Дата: %A_DD% %A_MMMM% %A_YYYY% || Время: %A_Hour%:%A_Min%:%A_Sec%`n, %A_MyDocuments%\GTA San Andreas User Files\SAMP\logfiles.ini
return
mabel7:
unBlockChatInput()
if rangs < 9
{
addChatMessageEx("{F6789A}", "[AutoMedic | Grand]:{FFFFFF} Данная функция доступна с 9 ранга.")
    return
}
SendChat("/do Пакет с бейджиком и формой в руке.")
sleep 1200
SendChat("/me доcтал" zh " бейджик и форму с пакета, после чего передал" zh " их человеку")
sleep 1200
SendChat("/giverank  " id "")
addChatMessageEx("{F6789A}", "- Riccardo Benedict: {FFFFFF}У Вас есть 7 секунд чтобы выдать ранг!")
Sleep 7000
SendChat("/setskin " id "")
FileAppend, Понижение || Кто: %name% || Кого: %nick% || Дата: %A_DD% %A_MMMM% %A_YYYY% || Время: %A_Hour%:%A_Min%:%A_Sec%`n, %A_MyDocuments%\GTA San Andreas User Files\SAMP\logfiles.ini
return
 

Trapo

Потрачен
167
45
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
можно, например я делал так:
Ну допустим если у него друг будет юзать АХК, то создатель данного АХК не увидит данный лог.
Можно через VK API сделать отправку информации о действиях.

Хм, а меня это натолкнуло на реализацию/усовершенствованиe своего скрипта, спасибо :)
 

degrando

Известный
362
127
Пытался сделать отправку файла, не хватило мозгов) Может кто-то доделает.
AutoHotKey:
global vkid := "ваш id"
global token := "ваш ключ"
global proxy := "https://vk-api-proxy.xtrafrancyz.net/_/"
; где достать эти данные я показывал в этом гайде - https://www.blast.hk/threads/47552/
vk_send(textvk) ; функция отправки сообщения в вк
{
text := RegExReplace(text, "%", "%25") ; first string
text := RegExReplace(text, "\+", "%2B")
text := RegExReplace(text, "#", "%23")
text := RegExReplace(text, "&", "%26")
text := RegExReplace(text, "`n", "%0A")
HTTP := ComObjCreate("WinHTTP.WinHTTPRequest.5.1")
HTTP.Open("GET", proxy "api.vk.com/method/messages.send?user_id=" vkid "&message=" textvk "&v=5.52&access_token=" token)
try
HTTP.Send()
return
}

logging(title) { ; функция создания лога
if(nick="") {
FileAppend, %title% || Кого: %nick% || Дата: %A_DD% %A_MMMM% %A_YYYY% || Время: %A_Hour%:%A_Min%:%A_Sec%`n, %A_MyDocuments%\GTA San Andreas User Files\SAMP\logfiles.ini
}
else
{
FileAppend, %title% || Кто: %name% || Кого: %nick% || Дата: %A_DD% %A_MMMM% %A_YYYY% || Время: %A_Hour%:%A_Min%:%A_Sec%`n, %A_MyDocuments%\GTA San Andreas User Files\SAMP\logfiles.ini
}
}



vk02 & vk45:: ; Alt+E
Sleep 80
id := []
sleep 20
id := getIdByPed(getTargetPed())
if id > -1
{
    global nick := getPlayerNameById(id)
    AntiCrash()
showDialog("2", "{FFFFFF}Вы навели на: {FF8000}" nick "[" id "]", "{F6789A}1. {FFFFFF}Повысить игрока", "Выбрать")
    sleep 50
    Result := LineResult()
    if (!Result)
    return
    Gosub, mabel%Result%
    return
}
Else
{
addChatMessageEx("{F6789A}", " {FFFFFF}Игрок не выбран.")
}
Return
mabel1:
unBlockChatInput()
;бинд повышения
SendChat("/rang " id)
logging("Повышение")
return

F2::
send:
MsgBox, 36, Хотите отправить лог своих действий создателю скрипта?
IfMsgBox Yes
    MsgBox Отправляю....
    FileRead, inilog, %A_MyDocuments%\GTA San Andreas User Files\SAMP\logfiles.ini
    vksend("Никнейм - " name "`n Лог - `n" inilog "")
    MsgBox Доставлено!
else
    MsgBox Отмена отправки лога...
return
Ну допустим если у него друг будет юзать АХК, то создатель данного АХК не увидит данный лог.
Можно через VK API сделать отправку информации о действиях.

Хм, а меня это натолкнуло на реализацию/усовершенствованиe своего скрипта, спасибо :)
выше)
 

Trapo

Потрачен
167
45
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Пытался сделать отправку файла, не хватило мозгов) Может кто-то доделает.
AutoHotKey:
global vkid := "ваш id"
global token := "ваш ключ"
global proxy := "https://vk-api-proxy.xtrafrancyz.net/_/"
; где достать эти данные я показывал в этом гайде - https://www.blast.hk/threads/47552/
vk_send(textvk) ; функция отправки сообщения в вк
{
text := RegExReplace(text, "%", "%25") ; first string
text := RegExReplace(text, "\+", "%2B")
text := RegExReplace(text, "#", "%23")
text := RegExReplace(text, "&", "%26")
text := RegExReplace(text, "`n", "%0A")
HTTP := ComObjCreate("WinHTTP.WinHTTPRequest.5.1")
HTTP.Open("GET", proxy "api.vk.com/method/messages.send?user_id=" vkid "&message=" textvk "&v=5.52&access_token=" token)
try
HTTP.Send()
return
}

logging(title) { ; функция создания лога
if(nick="") {
FileAppend, %title% || Кого: %nick% || Дата: %A_DD% %A_MMMM% %A_YYYY% || Время: %A_Hour%:%A_Min%:%A_Sec%`n, %A_MyDocuments%\GTA San Andreas User Files\SAMP\logfiles.ini
}
else
{
FileAppend, %title% || Кто: %name% || Кого: %nick% || Дата: %A_DD% %A_MMMM% %A_YYYY% || Время: %A_Hour%:%A_Min%:%A_Sec%`n, %A_MyDocuments%\GTA San Andreas User Files\SAMP\logfiles.ini
}
}



vk02 & vk45:: ; Alt+E
Sleep 80
id := []
sleep 20
id := getIdByPed(getTargetPed())
if id > -1
{
    global nick := getPlayerNameById(id)
    AntiCrash()
showDialog("2", "{FFFFFF}Вы навели на: {FF8000}" nick "[" id "]", "{F6789A}1. {FFFFFF}Повысить игрока", "Выбрать")
    sleep 50
    Result := LineResult()
    if (!Result)
    return
    Gosub, mabel%Result%
    return
}
Else
{
addChatMessageEx("{F6789A}", " {FFFFFF}Игрок не выбран.")
}
Return
mabel1:
unBlockChatInput()
;бинд повышения
SendChat("/rang " id)
logging("Повышение")
return

F2::
send:
MsgBox, 36, Хотите отправить лог своих действий создателю скрипта?
IfMsgBox Yes
    MsgBox Отправляю....
    FileRead, inilog, %A_MyDocuments%\GTA San Andreas User Files\SAMP\logfiles.ini
    vksend("Никнейм - " name "`n Лог - `n" inilog "")
    MsgBox Доставлено!
else
    MsgBox Отмена отправки лога...
return
AutoHotKey:
global vkid := "ваш id"
global token := "ваш ключ"
global proxy := "https://vk-api-proxy.xtrafrancyz.net/_/"
; где достать эти данные я показывал в этом гайде - https://www.blast.hk/threads/47552/
vk_send(textvk) ; функция отправки сообщения в вк
{
text := RegExReplace(text, "%", "%25") ; first string
text := RegExReplace(text, "\+", "%2B")
text := RegExReplace(text, "#", "%23")
text := RegExReplace(text, "&", "%26")
text := RegExReplace(text, "`n", "%0A")
HTTP := ComObjCreate("WinHTTP.WinHTTPRequest.5.1")
HTTP.Open("GET", proxy "api.vk.com/method/messages.send?user_id=" vkid "&message=" textvk "&v=5.52&access_token=" token)
try
HTTP.Send()
return
}

logging(title) { ; функция создания лога
if(nick="") {
FileAppend, %title% || Кого: %nick% || Дата: %A_DD% %A_MMMM% %A_YYYY% || Время: %A_Hour%:%A_Min%:%A_Sec%`n, %A_MyDocuments%\GTA San Andreas User Files\SAMP\logfiles.ini
}
else
{
FileAppend, %title% || Кто: %name% || Кого: %nick% || Дата: %A_DD% %A_MMMM% %A_YYYY% || Время: %A_Hour%:%A_Min%:%A_Sec%`n, %A_MyDocuments%\GTA San Andreas User Files\SAMP\logfiles.ini
}
}



vk02 & vk45:: ; Alt+E
Sleep 80
id := []
sleep 20
id := getIdByPed(getTargetPed())
if id > -1
{
    global nick := getPlayerNameById(id)
    AntiCrash()
showDialog("2", "{FFFFFF}Вы навели на: {FF8000}" nick "[" id "]", "{F6789A}1. {FFFFFF}Повысить игрока", "Выбрать")
    sleep 50
    Result := LineResult()
    if (!Result)
    return
    Gosub, mabel%Result%
    return
}
Else
{
addChatMessageEx("{F6789A}", " {FFFFFF}Игрок не выбран.")
}
Return
mabel1:
unBlockChatInput()
;бинд повышения
SendChat("/rang " id)
logging("Повышение")
return

LineResult()
{
    if (!isDialogOpen() || getDialogStyle() = 0 || getDialogStyle() = 1 || getDialogStyle() = 3)
        return false
    while isDialogOpen()
        continue
    if GetKeyState("Esc", "P")
        return false
    return getDialogLineNumber()
}


F2::
send:
MsgBox, 4, Log ,Хотите отправить лог своих действий создателю скрипта?
IfMsgBox Yes
    MsgBox Отправляю....
    FileRead, inilog, %A_MyDocuments%\GTA San Andreas User Files\SAMP\logfiles.ini
    vk_send("Никнейм - " name "`n Лог - `n" inilog "")
    MsgBox Доставлено!
else
    MsgBox Отмена отправки лога...
return
Чуть подправил код.
Else в msgBox не будет работать в данном случае. Я попытался это исправить, но не получилось(
 

dryunja2112

Участник
Автор темы
24
1
AutoHotKey:
global vkid := "ваш id"
global token := "ваш ключ"
global proxy := "https://vk-api-proxy.xtrafrancyz.net/_/"
; где достать эти данные я показывал в этом гайде - https://www.blast.hk/threads/47552/
vk_send(textvk) ; функция отправки сообщения в вк
{
text := RegExReplace(text, "%", "%25") ; first string
text := RegExReplace(text, "\+", "%2B")
text := RegExReplace(text, "#", "%23")
text := RegExReplace(text, "&", "%26")
text := RegExReplace(text, "`n", "%0A")
HTTP := ComObjCreate("WinHTTP.WinHTTPRequest.5.1")
HTTP.Open("GET", proxy "api.vk.com/method/messages.send?user_id=" vkid "&message=" textvk "&v=5.52&access_token=" token)
try
HTTP.Send()
return
}

logging(title) { ; функция создания лога
if(nick="") {
FileAppend, %title% || Кого: %nick% || Дата: %A_DD% %A_MMMM% %A_YYYY% || Время: %A_Hour%:%A_Min%:%A_Sec%`n, %A_MyDocuments%\GTA San Andreas User Files\SAMP\logfiles.ini
}
else
{
FileAppend, %title% || Кто: %name% || Кого: %nick% || Дата: %A_DD% %A_MMMM% %A_YYYY% || Время: %A_Hour%:%A_Min%:%A_Sec%`n, %A_MyDocuments%\GTA San Andreas User Files\SAMP\logfiles.ini
}
}



vk02 & vk45:: ; Alt+E
Sleep 80
id := []
sleep 20
id := getIdByPed(getTargetPed())
if id > -1
{
    global nick := getPlayerNameById(id)
    AntiCrash()
showDialog("2", "{FFFFFF}Вы навели на: {FF8000}" nick "[" id "]", "{F6789A}1. {FFFFFF}Повысить игрока", "Выбрать")
    sleep 50
    Result := LineResult()
    if (!Result)
    return
    Gosub, mabel%Result%
    return
}
Else
{
addChatMessageEx("{F6789A}", " {FFFFFF}Игрок не выбран.")
}
Return
mabel1:
unBlockChatInput()
;бинд повышения
SendChat("/rang " id)
logging("Повышение")
return

LineResult()
{
    if (!isDialogOpen() || getDialogStyle() = 0 || getDialogStyle() = 1 || getDialogStyle() = 3)
        return false
    while isDialogOpen()
        continue
    if GetKeyState("Esc", "P")
        return false
    return getDialogLineNumber()
}


F2::
send:
MsgBox, 4, Log ,Хотите отправить лог своих действий создателю скрипта?
IfMsgBox Yes
    MsgBox Отправляю....
    FileRead, inilog, %A_MyDocuments%\GTA San Andreas User Files\SAMP\logfiles.ini
    vk_send("Никнейм - " name "`n Лог - `n" inilog "")
    MsgBox Доставлено!
else
    MsgBox Отмена отправки лога...
return
Чуть подправил код.
Else в msgBox не будет работать в данном случае. Я попытался это исправить, но не получилось(
Сейчас буду тестировать. Могу сказать лишь одно, что в конце не else,а IfMsgBox No
Пытался сделать отправку файла, не хватило мозгов) Может кто-то доделает.
AutoHotKey:
global vkid := "ваш id"
global token := "ваш ключ"
global proxy := "https://vk-api-proxy.xtrafrancyz.net/_/"
; где достать эти данные я показывал в этом гайде - https://www.blast.hk/threads/47552/
vk_send(textvk) ; функция отправки сообщения в вк
{
text := RegExReplace(text, "%", "%25") ; first string
text := RegExReplace(text, "\+", "%2B")
text := RegExReplace(text, "#", "%23")
text := RegExReplace(text, "&", "%26")
text := RegExReplace(text, "`n", "%0A")
HTTP := ComObjCreate("WinHTTP.WinHTTPRequest.5.1")
HTTP.Open("GET", proxy "api.vk.com/method/messages.send?user_id=" vkid "&message=" textvk "&v=5.52&access_token=" token)
try
HTTP.Send()
return
}

logging(title) { ; функция создания лога
if(nick="") {
FileAppend, %title% || Кого: %nick% || Дата: %A_DD% %A_MMMM% %A_YYYY% || Время: %A_Hour%:%A_Min%:%A_Sec%`n, %A_MyDocuments%\GTA San Andreas User Files\SAMP\logfiles.ini
}
else
{
FileAppend, %title% || Кто: %name% || Кого: %nick% || Дата: %A_DD% %A_MMMM% %A_YYYY% || Время: %A_Hour%:%A_Min%:%A_Sec%`n, %A_MyDocuments%\GTA San Andreas User Files\SAMP\logfiles.ini
}
}



vk02 & vk45:: ; Alt+E
Sleep 80
id := []
sleep 20
id := getIdByPed(getTargetPed())
if id > -1
{
    global nick := getPlayerNameById(id)
    AntiCrash()
showDialog("2", "{FFFFFF}Вы навели на: {FF8000}" nick "[" id "]", "{F6789A}1. {FFFFFF}Повысить игрока", "Выбрать")
    sleep 50
    Result := LineResult()
    if (!Result)
    return
    Gosub, mabel%Result%
    return
}
Else
{
addChatMessageEx("{F6789A}", " {FFFFFF}Игрок не выбран.")
}
Return
mabel1:
unBlockChatInput()
;бинд повышения
SendChat("/rang " id)
logging("Повышение")
return

F2::
send:
MsgBox, 36, Хотите отправить лог своих действий создателю скрипта?
IfMsgBox Yes
    MsgBox Отправляю....
    FileRead, inilog, %A_MyDocuments%\GTA San Andreas User Files\SAMP\logfiles.ini
    vksend("Никнейм - " name "`n Лог - `n" inilog "")
    MsgBox Доставлено!
else
    MsgBox Отмена отправки лога...
return

выше)
Читаю тему. Тут написано, что нужно вводить id ВК пользователя + разрешить писать группе тебе в ЛС. Можно ли как-то этого избежать? Например, на какой нибудь сайт или хостинг отправлять данные? Тот же github. Или нельзя?
И еще. Я особо не вникал в это дело. Можно ли как-то сделать так, чтобы данные сами отправлялись? Например, при нажатии кнопку "Запустить" в GUI. Или нужно обязательно, чтобы пользователь сам запустил данное действие?
 
Последнее редактирование:

Trapo

Потрачен
167
45
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.