HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 13.05.2019, 17:47
Неадекватная сова
Постоянный
Регистрация: 02.06.2018
Сообщений: 342
С нами: 4183567

Репутация: 133
По умолчанию

Цитата:
Сообщение от Imbecil  

Почему если пытаюсь получить index сразу крашит? и почему szString всегда одинаковый пишет, какое то не понятное число?
Потому что читаешь не правильно:

Код:





Код:
ShowTextDraw - ID: 134
Parameters: UINT16 wTextDrawID, UINT8 Flags, float fLetterWidth, float fLetterHeight, UINT32 dwLetterColor, float fLineWidth, float fLineHeight, UINT32 dwBoxColor, UINT8 Shadow, UINT8 Outline, UINT32 dwBackgroundColor, UINT8 Style, UINT8 Selectable, float fX, float fY, UINT16 wModelID, float fRotX, float fRotY, float fRotZ, float fZoom, UINT16 wColor1, UINT16 wColor2, UINT8 szTextLen, char[] szText
 
Ответить с цитированием

  #2  
Старый 13.05.2019, 18:52
Imbecil
Новичок
Регистрация: 06.04.2019
Сообщений: 15
С нами: 3739435

Репутация: 0
По умолчанию

Цитата:
Сообщение от Rjx13  

Потому что читаешь не правильно:

Код:





Код:
ShowTextDraw - ID: 134
Parameters: UINT16 wTextDrawID, UINT8 Flags, float fLetterWidth, float fLetterHeight, UINT32 dwLetterColor, float fLineWidth, float fLineHeight, UINT32 dwBoxColor, UINT8 Shadow, UINT8 Outline, UINT32 dwBackgroundColor, UINT8 Style, UINT8 Selectable, float fX, float fY, UINT16 wModelID, float fRotX, float fRotY, float fRotZ, float fZoom, UINT16 wColor1, UINT16 wColor2, UINT8 szTextLen, char[] szText

из-за id все равно крашит, а текст все тот же пишет
 
Ответить с цитированием

  #3  
Старый 13.05.2019, 19:02
Musaigen
Познавший АНТИЧАТ
Регистрация: 01.04.2018
Сообщений: 1,710
С нами: 4272230

Репутация: 183


По умолчанию

Цитата:
Сообщение от Imbecil  

из-за id все равно крашит, а текст все тот же пишет
Потому что ты гений, который читает не по структуре RPC
 
Ответить с цитированием

  #4  
Старый 13.05.2019, 19:05
Imbecil
Новичок
Регистрация: 06.04.2019
Сообщений: 15
С нами: 3739435

Репутация: 0
По умолчанию

Цитата:
Сообщение от Musaigen  

Потому что ты гений, который читает не по структуре RPC
а как надо? я из примера брал
 
Ответить с цитированием

  #5  
Старый 13.05.2019, 20:22
Cake_
Участник форума
Регистрация: 04.04.2017
Сообщений: 263
С нами: 4793630

Репутация: 133
По умолчанию

Цитата:
Сообщение от Imbecil  


Почему если пытаюсь получить index сразу крашит? и почему szString всегда одинаковый пишет, какое то не понятное число?
Facepalm... Нужно читать textdraw id. Textdraw data, len textdraw, text textdrawa, в конце обязательно очисти мусорв строке. Я не за компом , так бы написал код. Я думаю , разберёшься сам


Цитата:
Сообщение от Imbecil  

а как надо? я из примера брал
Длину текста нужно читать перед текстом

Цитата:
Сообщение от cakebou  

Facepalm... Нужно читать textdraw id. Textdraw data, len textdraw, text textdrawa, в конце обязательно очисти мусорв строке. Я не за компом , так бы написал код. Я думаю , разберёшься сам

Длину текста нужно читать перед текстом
!отдельно!
 
Ответить с цитированием

  #6  
Старый 14.05.2019, 19:17
Imbecil
Новичок
Регистрация: 06.04.2019
Сообщений: 15
С нами: 3739435

Репутация: 0
По умолчанию

Цитата:
Сообщение от cakebou  

Facepalm... Нужно читать textdraw id. Textdraw data, len textdraw, text textdrawa, в конце обязательно очисти мусорв строке. Я не за компом , так бы написал код. Я думаю , разберёшься сам

Длину текста нужно читать перед текстом

!отдельно!
а как? напиши, пожалуйста, а то я дурачек
 
Ответить с цитированием

  #7  
Старый 14.05.2019, 19:25
Cake_
Участник форума
Регистрация: 04.04.2017
Сообщений: 263
С нами: 4793630

Репутация: 133
По умолчанию

Цитата:
Сообщение от Imbecil  

а как? напиши, пожалуйста, а то я дурачек
Попробуй просто длину текста читать отдельно

Цитата:
Сообщение от cakebou  

Попробуй просто длину текста читать отдельно
Дату текстдрава вроде не обязательно читать

Цитата:
Сообщение от cakebou  

Попробуй просто длину текста читать отдельно

Дату текстдрава вроде не обязательно читать
И используй 256 элементов в массиве , на всякий случай
 
Ответить с цитированием

  #8  
Старый 14.05.2019, 21:01
astap_
Постоянный
Регистрация: 05.03.2014
Сообщений: 626
С нами: 6415078

Репутация: 163


По умолчанию

Цитата:
Сообщение от Imbecil  

а как? напиши, пожалуйста, а то я дурачек
Код:





Код:
bool CALLBACK incomingRPC(stRakNetHookParams *params)
{
    if (params->packetId == ScriptRPCEnumeration::RPC_ScrShowTextDraw)
    {
        stTextDrawTransmit txd;
       
        WORD txdID, cTextLen; char cText[800];
        params->bitStream->ResetReadPointer();
        params->bitStream->Read(txdID);
        params->bitStream->Read((PCHAR)&txd, sizeof(stTextDrawTransmit));
        params->bitStream->Read(cTextLen);
        params->bitStream->Read(cText, cTextLen);
        params->bitStream->ResetReadPointer();
        cText[cTextLen] = '\0';

        SF->getSAMP()->getChat()->AddChatMessage(-1, "Получен текстдрав (%i) с текстом: %s", txdID, cText);
    }
    return true;
};
 
Ответить с цитированием

  #9  
Старый 14.05.2019, 18:30
SAMP.ASI
Участник форума
Регистрация: 27.05.2016
Сообщений: 223
С нами: 5242744

Репутация: 83
По умолчанию

Хочу получить ники всех игроков на сервере.

C++:





[CODE]
int
main
(
)
{
DWORD pID
;
char
moduleName
[
]
=
"samp.dll"
;
HWND hGameWindow
=
FindWindow
(
NULL
,
L
"GTA:SA:MP"
)
;
GetWindowThreadProcessId
(
hGameWindow
,
&
pID
)
;
HANDLE pGta
=
OpenProcess
(
PROCESS_VM_READ
,
FALSE
,
pID
)
;
DWORD pSamp
=
GetModuleBaseAddress
(
pID
,
L
"samp.dll"
)
;
cout

strPlayerName



Но получаю либо кашу либо краш.
 
Ответить с цитированием

  #10  
Старый 15.05.2019, 15:31
index
Новичок
Регистрация: 18.10.2015
Сообщений: 6
С нами: 5563739

Репутация: 0
По умолчанию

[QUOTE="SAMP.ASI"]

Хочу получить ники всех игроков на сервере.

C++:





[CODE]
int
main
(
)
{
DWORD pID
;
char
moduleName
[
]
=
"samp.dll"
;
HWND hGameWindow
=
FindWindow
(
NULL
,
L
"GTA:SA:MP"
)
;
GetWindowThreadProcessId
(
hGameWindow
,
&
pID
)
;
HANDLE pGta
=
OpenProcess
(
PROCESS_VM_READ
,
FALSE
,
pID
)
;
DWORD pSamp
=
GetModuleBaseAddress
(
pID
,
L
"samp.dll"
)
;
cout

strPlayerName
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.

×

Внести депозит

Введите сумму USDT:

Принимается только USDT TRC20. Fake/Flash USDT не засчитывается.

×

Вывести депозит

Сумма USDT:

Ваш USDT TRC20 кошелек:

Заявка будет отправлена администратору.