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

Замена значения в запущенном процессе (ptrace(), Linux) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Выдает ошибку но я не могу понять почему http://www.cyberforum.ru/cpp-beginners/thread965901.html
#include <iostream> using namespace std; struct warehouse { char *name; int number, prise, date; }; void Info (warehouse *list, int n)
C++ Как не забыть С++ Привет всем. В этом году поступил на программную инженерию, в ВУЗе мы начали программирование с Delphi. До ВУЗа дома, я учил С++. И вот теперь времени на С++ осталось очень мало, в то время как раньше я уделял ему от 2 до 4 часов в день. Как бы мне не подзабыть его? Что подскажете? P.S. хотел попробовать устроится жуниор С++, но это еще думаю рановато. http://www.cyberforum.ru/cpp-beginners/thread965900.html
C++ C++, <fstream>, начинающий, ошибка на выполнении
#include <iostream> #include <fstream> using namespace std; class Write { public: char s, *name, way; short int N; Write() {
C++ Сравнение элементов массивов с значением
Добрый вечер. Элементы массива вводятся "пользователем" через консоль. Нужно сделать так, чтобы введённые числа в массиве сравнивались со значением переменной "а" следующим образом - числа большие значения "а" приравнивались к нулю, а меньшие и равные без изменений. Необязательно: тут мой код (комментарии и надписи на литовском языке). a - тот самый массив, который должен сравниваться с...
C++ Методы балансировки BST дерева http://www.cyberforum.ru/cpp-beginners/thread965885.html
Привет Всем!!!!!! Подскажите где можно найти информацию по методам балансировки: - оптимизацией; - амортизацией; Спс.....
C++ C++, <fstream>, начинающий, ошибка на выполнении #include <iostream> #include <fstream> using namespace std; class Write { public: char s, *name, way; short int N; Write() { подробнее

Показать сообщение отдельно
Violent
0 / 0 / 0
Регистрация: 30.09.2013
Сообщений: 4

Замена значения в запущенном процессе (ptrace(), Linux) - C++

30.09.2013, 20:02. Просмотров 369. Ответов 2
Метки (Все метки)

Здравствуйте, уважаемые форумчане!

Суть задачи: есть некий процесс в Linux'e. В этом процессе по определенному адресу находится значение, которое нужно заменить на желаемое.

Мои поиски привели меня к функции ptrace():
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <sys/ptrace.h>
#include <sys/types.h>
#include <stdio.h>
 
using namespace std;
 
int main()
{
pid_t pid = 7533;
long int addr = 0x817e118;
int data = 0x0004ffb7;
long ret = ptrace(PTRACE_POKEDATA, pid, addr, data); 
perror("ptrace");
}
При выполнении программы появляется ошибка "ptrace: No such process", хотя процесс с таким PID существует (узнавал с помощью "ps axu").

Буду благодарен за любые направления в решении данной задачи.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru