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

  #1  
Старый 24.07.2021, 07:48
.deserve
Познающий
Регистрация: 06.09.2018
Сообщений: 32
С нами: 4045092

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

Цитата:
Сообщение от || NN - NoName ||  

Долго искал и до сих пор ищу ответ на интересующий меня вопрос.

Суть вопроса: как мне подключить SAMP-api к проекту?

Вот у меня есть SAMP-api. Что мне делать дальше? Как его подключить к моему проекту?

Мне нужно только 0.3.7-R1
Я не совсем понимаю что ты тогда мог искать, если не смог найти как подключить статическую/динамическую библиотеку к своему проекту.

Я не знаю, что это за проект и что он генерит, но тебе в любом случае нужно подключить хидеры (.h files) в свой проект, а после этого скомпилить проект и подключить библиотеку к проекту, в зависимости от того че там и от того че ты хочешь. Если статика - то делать особо нечего, в msdn даже есть: тык

А если динамическая, то тебе решать как ты хочешь юзать её функции и как ее подключать. Но они все равно объявлены в header files, поэтому их тебе нужно все равно подключать. А далее смотришь тут

По твоим хотелкам дальше - либо явное связывание, либо неявное, либо если тебе надо чтобы все шло по маслу до того как ты вызовешь функцию из библиотеки, то используй отложенную загрузку (только не с kernel32.dll, но тебе её и не нужно отложенно загружать), но при этом не используй FreeLibrary.

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

По сути всё. И это применимо не только к твоему проекту, но и ко всем сторонним библиотекам.
 
Ответить с цитированием

  #2  
Старый 24.07.2021, 16:25
|| NN - NoName ||
Познавший АНТИЧАТ
Регистрация: 21.12.2016
Сообщений: 1,046
С нами: 4943565

Репутация: 168


По умолчанию

Цитата:
Сообщение от .deserve  

Я не совсем понимаю что ты тогда мог искать, если не смог найти как подключить статическую/динамическую библиотеку к своему проекту.

Я не знаю, что это за проект и что он генерит, но тебе в любом случае нужно подключить хидеры (.h files) в свой проект, а после этого скомпилить проект и подключить библиотеку к проекту, в зависимости от того че там и от того че ты хочешь. Если статика - то делать особо нечего, в msdn даже есть: тык
А если динамическая, то тебе решать как ты хочешь юзать её функции и как ее подключать. Но они все равно объявлены в header files, поэтому их тебе нужно все равно подключать. А далее смотришь тут
По твоим хотелкам дальше - либо явное связывание, либо неявное, либо если тебе надо чтобы все шло по маслу до того как ты вызовешь функцию из библиотеки, то используй отложенную загрузку (только не с kernel32.dll, но тебе её и не нужно отложенно загружать), но при этом не используй FreeLibrary.
Тебе я так полагаю больше неявное связывание подойдет, ибо меньше мороки.
По сути всё. И это применимо не только к твоему проекту, но и ко всем сторонним библиотекам.
Благодарю. Мне все объяснили и я сразу понял в чём была моя ошибка.
 
Ответить с цитированием

  #3  
Старый 25.07.2021, 15:55
loganhackerdff
Постоянный
Регистрация: 24.07.2017
Сообщений: 867
С нами: 4633764

Репутация: 148


По умолчанию

Привет всем

мне нужна хелпа с имги

у меня есть функция получения названия раскладки:

C++:





Код:
std
::
string
GetKeyBoardLocaleName
(
)
{
char
OutBuff
[
16
]
;
GetKeyboardLayoutNameA
(
OutBuff
)
;
char
buffer
[
255
]
;
GetLocaleInfoA
(
strtol
(
OutBuff
,
(
char
*
*
)
OutBuff
[
strlen
(
OutBuff
)
]
,
16
)
,
LOCALE_SLANGUAGE
,
buffer
,
sizeof
(
buffer
)
/
sizeof
(
char
)
)
;
return
buffer
;
}


Я также загуражю шрифт с поддержкой Кирилицы, русский текст у меня рисуеться, но вот вместо названия раскладки знаки вопроса

C++:





Код:
char
szBuffer
[
128
]
;
sprintf
(
szBuffer
,
(
const
char
*
)
u8
"Раскладка: %s"
,
GetKeyBoardLocaleName
(
)
.
c_str
(
)
)
;
ImGui
::
TextColored
(
ImVec4
(
m_v4Color
.
x
,
m_v4Color
.
y
,
m_v4Color
.
z
,
1.f
)
,
szBuffer
)
;


В MessageBoxA() текст выводиться, раньше я рендерил через Font на SF, сейчас всё через ImGui
 
Ответить с цитированием

  #4  
Старый 25.07.2021, 15:56
SR_team
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами: 6603505

Репутация: 183


По умолчанию

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

Привет всем
мне нужна хелпа с имги
у меня есть функция получения названия раскладки:

C++:





Код:
std
::
string
GetKeyBoardLocaleName
(
)
{
char
OutBuff
[
16
]
;
GetKeyboardLayoutNameA
(
OutBuff
)
;
char
buffer
[
255
]
;
GetLocaleInfoA
(
strtol
(
OutBuff
,
(
char
*
*
)
OutBuff
[
strlen
(
OutBuff
)
]
,
16
)
,
LOCALE_SLANGUAGE
,
buffer
,
sizeof
(
buffer
)
/
sizeof
(
char
)
)
;
return
buffer
;
}


Я также загуражю шрифт с поддержкой Кирилицы, русский текст у меня рисуеться, но вот вместо названия раскладки знаки вопроса

C++:





Код:
char
szBuffer
[
128
]
;
sprintf
(
szBuffer
,
(
const
char
*
)
u8
"Раскладка: %s"
,
GetKeyBoardLocaleName
(
)
.
c_str
(
)
)
;
ImGui
::
TextColored
(
ImVec4
(
m_v4Color
.
x
,
m_v4Color
.
y
,
m_v4Color
.
z
,
1.f
)
,
szBuffer
)
;

у тебя слово "Раскладка" в UTF-8, а GetLocaleInfoA отдает cp1251
 
Ответить с цитированием

  #5  
Старый 27.07.2021, 23:44
TheD1sl1ke
Новичок
Регистрация: 25.06.2021
Сообщений: 15
С нами: 2571573

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

Всем привет. Каким образом можно прочитать адрес памяти в C#/C++?

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

  #6  
Старый 27.07.2021, 23:47
kin4stat
Флудер
Регистрация: 06.11.2017
Сообщений: 2,759
С нами: 4483143

Репутация: 183


По умолчанию

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

Всем привет. Каким образом можно прочитать адрес памяти в C#/C++?
Если быть конкретнее то мне нужно получить значение адреса памяти, для дальнейшего использования в качестве переменной.
C++:





Код:
template

T
ReadMemory
(
uintptr_t address
)
{
DWORD old
;
VirtualProtect
(
reinterpret_cast

(
address
)
,
sizeof
(
T
)
,
PAGE_READWRITE
,
&
old
)
;
T value
=
*
reinterpret_cast

(
address
)
;
VirtualProtect
(
reinterpret_cast

(
address
)
,
sizeof
(
T
)
,
old
,
&
old
)
;
return
value
;
}
 
Ответить с цитированием

  #7  
Старый 27.07.2021, 23:47
loganhackerdff
Постоянный
Регистрация: 24.07.2017
Сообщений: 867
С нами: 4633764

Репутация: 148


По умолчанию

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

Всем привет. Каким образом можно прочитать адрес памяти в C#/C++?
Если быть конкретнее то мне нужно получить значение адреса памяти, для дальнейшего использования в качестве переменной.
с++ :

C++:





Код:
auto
value
=
*
(
тип переменной
*
)
адрес
;


для C# по идее тоже самое только в unsafe блок и auto заменить на var
 
Ответить с цитированием

  #8  
Старый 30.07.2021, 17:24
huulysuka
Новичок
Регистрация: 30.07.2021
Сообщений: 1
С нами: 2521503

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

1. Как конвертировать RGBA Buffer в виде HEX (\xFF\x00\x00\xFF) в изображение?
 
Ответить с цитированием

  #9  
Старый 30.07.2021, 17:27
loganhackerdff
Постоянный
Регистрация: 24.07.2017
Сообщений: 867
С нами: 4633764

Репутация: 148


По умолчанию

Привет всем, кто знает как открыть меню (которое на ESC) чё может куда-то записать или чо вызвать?
 
Ответить с цитированием

  #10  
Старый 30.07.2021, 19:38
kin4stat
Флудер
Регистрация: 06.11.2017
Сообщений: 2,759
С нами: 4483143

Репутация: 183


По умолчанию

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

Привет всем, кто знает как открыть меню (которое на ESC) чё может куда-то записать или чо вызвать?
Думаю поймешь:

Как уйти в ESC (не фейк афк)

Как можно цивилизованно выйти в ESC без костылей?

www.blast.hk
 
Ответить с цитированием
Ответ





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


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




ANTICHAT ™ © 2001- Antichat Kft.