
28.10.2023, 15:02
|
|
Познающий
Регистрация: 19.02.2019
Сообщений: 89
С нами:
3806297
Репутация:
73
|
|
На Android API выше 29 перестала работать функция FindLibrary.
C++:
Код:
uintptr_t
FindLibrary
(
const
char
*
library
)
{
char
filename
[
0xFF
]
=
{
0
}
,
buffer
[
2048
]
=
{
0
}
;
FILE
*
fp
=
0
;
uintptr_t address
=
0
;
sprintf
(
filename
,
"/proc/%d/maps"
,
getpid
(
)
)
;
fp
=
fopen
(
filename
,
"rt"
)
;
if
(
fp
==
0
)
{
Log
(
"ERROR: can't open file %s"
,
filename
)
;
goto
done
;
}
while
(
fgets
(
buffer
,
sizeof
(
buffer
)
,
fp
)
)
{
if
(
strstr
(
buffer
,
library
)
)
{
address
=
(
uintptr_t
)
strtoul
(
buffer
,
0
,
16
)
;
break
;
}
}
done
:
if
(
fp
)
fclose
(
fp
)
;
return
address
;
}
*
Что делать? Как фиксить?(
|
|
|