Форум программистов, компьютерный форум CyberForum.ru

Знаю С, написать ничего толкового не могу, нужен совет опытных - C++

Восстановить пароль Регистрация
 
 
ASCII
 Аватар для ASCII
82 / 54 / 8
Регистрация: 15.12.2013
Сообщений: 370
Завершенные тесты: 2
15.12.2013, 01:30     Знаю С, написать ничего толкового не могу, нужен совет опытных #1
Всем привет! года так 1.5 назад начал учить язык С/С++, итог тому, выучил С, в принципе знаю 80% языка, но проблема вот в чем, я не могу написать ничего толкового, абсолютно, пишу только никому не нужные консольные приложения и в очередной раз закрепляю знания, а как написать что-то большее, я не знаю и даже не представляю с чего начать? Подскажите пожалуйста, может есть какая литература, которая не просто сам язык раскрывает, скажем так, а где еще будут даваться задачи, а то КПД от обучения С у меня 0... Кто с чего начал скажите пожалуйста... Может вы задачи дадите мне, а я реализую...

А то надоело писать всякие калькуляторы и прочие "Хеллоу ворлды".
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.12.2013, 01:30     Знаю С, написать ничего толкового не могу, нужен совет опытных
Посмотрите здесь:

Нужен совет! C++
C++ Нужен совет
Нужен совет C++
C++ Маленькая кучках глупых вопросов (отвечайте по проще, я еще ничего не знаю ;)
C++ необходим совет опытных программистов c++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.12.2013, 16:03     Знаю С, написать ничего толкового не могу, нужен совет опытных
Еще ссылки по теме:

Нужен совет а то не знаю как начать C++
Нужен совет, как правильно написать клас C++
C++ Требуется совет опытных программистов

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
_lunar_
Graphics API Developer
1197 / 1123 / 76
Регистрация: 03.05.2011
Сообщений: 2,741
15.12.2013, 16:03     Знаю С, написать ничего толкового не могу, нужен совет опытных #21
освежу немного тему, наконец-то добрался до компьютера с IDE, просили про трейнер рассказать
Цитата Сообщение от FreeLanceHelp Посмотреть сообщение
Не подскажите с чего начать для написания трейнера для игры. как вклинится в процесс игры? и тому подобное...
на примере игры I Am Alive
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <Windows.h>
 
using namespace std;
 
int main()
{
    HWND hWnd = FindWindow(nullptr, "IAmAlive");
    DWORD pID;
    GetWindowThreadProcessId(hWnd, &pID);
    HANDLE handle = OpenProcess(PROCESS_ALL_ACCESS, FALSE, pID);
    cout << "Process ID - " << pID << endl;
    cout << "Handle - " << handle << endl;
    DWORD addr_1 = 0x10BE20FE;
    DWORD addr_2 = 0x10BE2099;
    byte Bytes[] = { 0x90, 0x90, 0x90, 0x90, 0x90 };
    WriteProcessMemory(handle, (LPVOID)addr_1, Bytes, 5, 0);
    WriteProcessMemory(handle, (LPVOID)addr_2, Bytes, 5, 0);
    CloseHandle(handle);
 
    cin.get();
    return 0;
}
смысл в трейнере - переписать некоторые байты по определённому смещению исполняемого файла, загруженного в память. Чтобы это сделать необходимо воспользоваться функцией WriteProcessMemory. Посмотрев её структуру, можно увидеть что для этого требуется: во-первых хендл, адрес смещения (базовый адрес, не динамический) и байты, которые будем писать в память. Чтобы узнать хендл нужно узнать идентификатор запущенного процесса. Для этого можно воспользоваться функциями FindWindow (1 параметр - имя класса, 2 - имя окна) и GetWindowThreadProcessId, которая вернёт в переменную pID идентификатор процесса. Для получения хендла можно воспользоваться функцией OpenProcess, передадим в неё полный доступ к процессу и идентификатор. С помощью CheatEngine я узнал базовые адреса, по которым происходит изменение значения выносливости (их может быть 1, 2 и более для одного параметра, CheatEngine даёт такую возможность). Чтобы это значение не изменялось нужно его "занулить" ассемблерной инструкцией nop (или 0х90 в 16-ричной). CheatEngine показывает количество байт по найденному смещению - их 5. Заполняем WriteProcessMemory и закрываем хендл.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Yandex
Объявления
15.12.2013, 16:03     Знаю С, написать ничего толкового не могу, нужен совет опытных
Ответ Создать тему
Опции темы

Текущее время: 03:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru