| Сейчас на форуме: tyns777, zombi-vadim, zds (+4 невидимых) | 
| eXeL@B —› Программирование —› Получить результат выполнения функции в памяти | 
| << . 1 . 2 . | 
| Посл.ответ | Сообщение | 
| 
 | 
Создано: 12 июля 2015 13:43 · Поправил: Uz_  · Личное сообщение · #1 Есть значит функция(она в другом процессе, вызываю ее из его памяти): Code: 
 Вызываю ее на Delphi вот так: Code: 
 Вопрос:как получить результат этой самой функции? т.е переданное число+3 и вывести его например через MessageBox ![]()  | 
| 
 | 
Создано: 13 июля 2015 15:15  · Личное сообщение · #2  | 
| 
 | 
Создано: 13 июля 2015 15:43  · Личное сообщение · #3 Uz_ пишет: ShowMessage(IntToStr(Integer(code)));         ![]() Code: 
 ----- Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли. ![]()  | 
| 
 | 
Создано: 13 июля 2015 15:59  · Личное сообщение · #4  | 
| 
 | 
Создано: 13 июля 2015 17:11 · Поправил: kid  · Личное сообщение · #5  | 
| 
 | 
Создано: 13 июля 2015 18:17  · Личное сообщение · #6  | 
| 
 | 
Создано: 13 июля 2015 18:40  · Личное сообщение · #7  | 
| 
 | 
Создано: 13 июля 2015 19:03  · Личное сообщение · #8 Uz_ пишет: То я рандомные цифры привел, сейчас - 14155779 14155779 = 0xD80003 Это есть ни что иное как новая страница памяти которая была выделена командой VirtualAlloc , после к ней добавили 0х3 . Отсюда логично предположить что функция берет из стека переменную сразу , а не указатель на нее . сделайте так : Code: 
 ![]()  | 
| 
 | 
Создано: 13 июля 2015 19:22  · Личное сообщение · #9  | 
| 
 | 
Создано: 13 июля 2015 19:32  · Личное сообщение · #10 Uz_ пишет: kid, тож самое. а так ? Code: 
   | Сообщение посчитали полезным: Uz_ | 
| 
 | 
Создано: 13 июля 2015 20:50  · Личное сообщение · #11  | 
| 
 | 
Создано: 13 июля 2015 20:52  · Личное сообщение · #12  | 
| 
 | 
Создано: 13 июля 2015 20:53  · Личное сообщение · #13  | 
| 
 | 
Создано: 13 июля 2015 22:20  · Личное сообщение · #14 #define STILL_ACTIVE 0x103 Сколько ещё страниц топика понадобится, чтобы прочитать мсдн и 1 единственную функу вызвать?   | Сообщение посчитали полезным: SReg | 
| 
 | 
Создано: 13 июля 2015 23:00  · Личное сообщение · #15  | 
| 
 | 
Создано: 13 июля 2015 23:08 · Поправил: dosprog  · Личное сообщение · #16 ----------------------------------------------- The ExitThread function ends a thread. VOID ExitThread( DWORD dwExitCode // exit code for this thread ); Parameters: dwExitCode Specifies the exit code for the calling thread. Use the GetExitCodeThread function to retrieve a thread's exit сode. ------------------------------------------------------------ The GetExitCodeThread function retrieves the termination status of the specified thread. BOOL GetExitCodeThread( HANDLE hThread, // handle to the thread LPDWORD lpExitCode // address to receive termination status ); ------------------------------------------------------------ Ветка должна завершиться так: ExitThread( CallFunc3( 1 ) ); // например, 1, или что там другое.. Тогда: GetExitCodeThread( hThread, &retcode ); retcode - будет равно (1+3) = 4. ajax пишет: phucking hosting--> Link <-- ![]()   | Сообщение посчитали полезным: Uz_ | 
| 
 | 
Создано: 13 июля 2015 23:19  · Личное сообщение · #17  | 
| 
 | 
Создано: 14 июля 2015 01:02 · Поправил: ajax  · Личное сообщение · #18  | 
| << . 1 . 2 . | 
| eXeL@B —› Программирование —› Получить результат выполнения функции в памяти | 










 Для печати