 |
|

21.05.2016, 19:12
|
|
Постоянный
Регистрация: 10.07.2015
Сообщений: 642
С нами:
5706781
Репутация:
43
|
|
Почему не работает? Хочу сделать массив массивов массивов%) (примерно так array[0][0][0]). Но чтобы количество элементов можно было увеличивать.
Код:
Код:
int lvl1 = 0;
int lvl2 = 0;
int lvl3 = 0;
void inc3(int *arr, int val)
{
lvl3++;
arr = (int *)realloc(arr, sizeof(int) * lvl3);
arr[lvl3 - 1] = val;
}
void inc2(int **arr, int val)
{
lvl2++;
arr = (int **)realloc(arr, sizeof(int) * lvl2);
inc3(arr[lvl2 - 1], val);
}
void inc1(int ***arr, int val)
{
lvl1++;
arr = (int ***)realloc(arr, sizeof(int) * lvl1);
inc2(arr[lvl1 - 1], val);
}
void main()
{
int ***arr = NULL;
inc1(arr, 10);
}
|
|
|

21.05.2016, 19:56
|
|
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами:
6921957
Репутация:
183
|
|
А не проще ли заюзать вектора?
|
|
|

22.05.2016, 00:09
|
|
Новичок
Регистрация: 21.06.2015
Сообщений: 22
С нами:
5733802
Репутация:
53
|
|
Какие оффсеты нужны для создания диалога на 0.3.7? Юзаю код ниже, в результате диалог не отображается.
Сообщение от Спойлер
C++:
Код:
#define SAMP_DIALOG_SHOW 0x80320
//
#define SAMP_DIALOG_INFO_OFFSET 0x2129F8
//
showSampDialog
(
int
send
,
int
dialogID
,
int
typedialog
,
char
*
caption
,
char
*
text
,
char
*
button1
,
char
*
button2
)
{
uint32_t
samp_dll
=
(
uint32_t
)
GetModuleHandle
(
"samp.dll"
)
;
g_dwSAMP_Addr
=
(
uint32_t
)
samp_dll
;
uint32_t
func
=
g_dwSAMP_Addr
+
SAMP_DIALOG_SHOW
;
uint32_t
data
=
g_dwSAMP_Addr
+
SAMP_DIALOG_INFO_OFFSET
;
__asm mov eax
,
dword ptr
[
data
]
__asm mov ecx
,
dword ptr
[
eax
]
//mov to offset
__asm push send
//0 - No send response, 1 - Send response
__asm push button2
__asm push button1
__asm push text
__asm push caption
__asm push typedialog
__asm push dialogID
__asm call func
return
;
}
Думаю нужны другие адреса в #define, может знаете какие?
И 2 вопрос, как редактировать пункты в главном меню на Esc? Убрать какой-то например.
|
|
|

22.05.2016, 14:14
|
|
Познающий
Регистрация: 03.11.2014
Сообщений: 43
С нами:
6065807
Репутация:
0
|
|
SAMP_DIALOG_SHOW 0x6B9C0
SAMP_DIALOG_INFO_OFFSET 0x21A0B8
|
|
|

22.05.2016, 14:43
|
|
Постоянный
Регистрация: 10.07.2015
Сообщений: 642
С нами:
5706781
Репутация:
43
|
|
Сообщение от Dark_Knight
А не проще ли заюзать вектора?
Это что?
|
|
|

22.05.2016, 17:07
|
|
Постоянный
Регистрация: 15.12.2013
Сообщений: 412
С нами:
6530249
Репутация:
133
|
|
Сообщение от AWRage
Это что?
std::vector
|
|
|

24.05.2016, 17:06
|
|
Постоянный
Регистрация: 10.07.2015
Сообщений: 642
С нами:
5706781
Репутация:
43
|
|
Как проверить что нужная клавиша была нажата, а не зажата.
|
|
|

24.05.2016, 17:25
|
|
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами:
6603505
Репутация:
183
|
|
Сообщение от AWRage
Как проверить что нужная клавиша была нажата, а не зажата.
WM_KEYDOWN
|
|
|

24.05.2016, 22:33
|
|
Постоянный
Регистрация: 10.07.2015
Сообщений: 642
С нами:
5706781
Репутация:
43
|
|
Как я понял, вместо _beginthreadex можно засунуть вызов своей функции в case: DLL_THREAD_ATTACH? На сколько это будет правильно и когда вообще вызывается функция DllMain и параметром DLL_THREAD_ATTACH?
|
|
|

24.05.2016, 22:58
|
|
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами:
6603505
Репутация:
183
|
|
Сообщение от AWRage
Как я понял, вместо _beginthreadex можно засунуть вызов своей функции в case: DLL_THREAD_ATTACH? На сколько это будет правильно и когда вообще вызывается функция DllMain и параметром DLL_THREAD_ATTACH?
DLL_PROCESS_ATTACH вызывается при подключение библиотеки к процессу
DLL_THREAD_ATTACH вызывается когда программа опрашивает подключенные библиотеки. Опрашивает не сама, а система, по этому вызываются даже приинжекченые библиотеки
DLL_THREAD_DETACH аналогично предыдущему, только вызывается позже. Может быть полезно для каких-либо специфичных задач, в которых надо что-то изменить на выходе из библиотеки
DLL_PROCESS_DETACH вызывается при выгрузке библиотеки из памяти процесса
Есть еще WinAPI функция, которая отключает опрос библиотеки, я ее не помню, но можно найти в говно-примерах читов, где сам чит работает в отдельном потоке
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|