
02.10.2008, 12:55
|
|
Постоянный
Регистрация: 05.05.2006
Сообщений: 743
Провел на форуме: 2982851
Репутация:
107
|
|
Сообщение от slesh
А так я задумывался както над довольно интерестной вешью в плане сетевого програмимрования. Но времяни небыло для реализации. Суть её такова:
Структура команды следующая
Имя библиотеки + имя функции + параметры + что передать обратно в сокет.
И идет это примерно так
1) Читаешь команду из сокета
2) грузишь бебиблиотеку
3) грузишь функцию из неё
4) выполняешь эту функцию с заданными параметрами
5) результат выполнения передается обратно в зависимости от параметров которые были указаны в запросе. Или коды ошибок
Теоретически таким образом можно делать практически всё что угодно.
К примеру нужно вывести на экран сообщение
для этого будет типа
len_lib + user32.dll + len_name + MessageBoxA + param_type+[param_len]+param итд ... + 0
типа
0 - результат выполнения функции
1 ... n - переданный параметр
При том что организация переменных - тоже проста. а заранее указанные типы данных тоже расширяют всё.
В этоге теоретически можно мное что делать удаленно.
P.S. Но это тока пока моя теория.
такое уже вроде в природе существует ru.wikipedia.org/wiki/Remote_Procedure_Call
|
|
|