Сейчас на форуме: bartolomeo (+6 невидимых) |
eXeL@B —› Программирование —› Вопрос по Си программированию |
<< . 1 . 2 . 3 . 4 . |
Посл.ответ | Сообщение |
|
Создано: 28 ноября 2010 23:54 · Поправил: PE_Kill · Личное сообщение · #1 Хех мои жалкие потуги. Буду тут флудить. Пытаюсь накодить функцию. Функция на вход получает контекст и данные, после чего распихивает эти данные в контекст. Собственно цель оптимизировать весь код эту и другие функции по размеру. Компилятор в релизе вырезает нахрен функцию и втыкает ее код прямо в основной код, как будто это макрос. Собственно вопрос, как ему сказать что мне это не нравится, но при этом оставить оптимизацию по размеру? ----- Yann Tiersen best and do not fuck |
|
Создано: 18 декабря 2010 13:08 · Личное сообщение · #2 reversecode пишет: ну попробуй скомпиль два .c файла в один obj Не получится, я же написал по-русски: объединить все исходники (*.с и асм) в один файл , т.к. сколько исходных файлов на входе столько объектных файлов и создаст компилятор, исключения составят только инлайн функции, если они находятся в отдельных файлах. ----- Everything is relative... |
|
Создано: 18 декабря 2010 13:20 · Поправил: reversecode · Личное сообщение · #3 |
|
Создано: 19 декабря 2010 02:46 · Поправил: Hexxx · Личное сообщение · #4 PE_Kill пишет: как их прилинковать к главному OBJ? Что конкретно писать? ты можешь выдрать нужные тебе obj'и и собрать из них снова lib. Не вижу смысла таскать obj'и если их много. И не вижу смысла разбирать их на asm, а потом компилить в один obj. p.s. А вообще я не понимаю зачем потрошить lib, если линкер выкинет все, что не юзается в либе, и оставит только нужное. Т.е. лишнего кода в exe не попадет. ----- Реверсивная инженерия - написание кода идентичного натуральному |
|
Создано: 19 декабря 2010 07:57 · Личное сообщение · #5 |
|
Создано: 19 декабря 2010 12:26 · Личное сообщение · #6 |
|
Создано: 19 декабря 2010 14:59 · Поправил: Hexxx · Личное сообщение · #7 |
|
Создано: 19 декабря 2010 15:25 · Личное сообщение · #8 |
|
Создано: 20 декабря 2010 00:05 · Личное сообщение · #9 PE_Kill пишет: Потому что основной проект на делфи а этот кодес уже готовый на си. Может сделать DLL? ----- Реверсивная инженерия - написание кода идентичного натуральному | Сообщение посчитали полезным: [c4] |
|
Создано: 20 декабря 2010 02:13 · Личное сообщение · #10 |
|
Создано: 20 декабря 2010 07:45 · Поправил: PE_Kill · Личное сообщение · #11 |
|
Создано: 20 декабря 2010 12:20 · Личное сообщение · #12 |
|
Создано: 20 декабря 2010 18:19 · Личное сообщение · #13 |
|
Создано: 20 декабря 2010 18:45 · Личное сообщение · #14 |
|
Создано: 20 декабря 2010 19:22 · Личное сообщение · #15 Кто-нибудь может пользовался На сколько осмысленно применение такого рода программ при переводе с одного языка на другой? Или с ними только ещё больше времени убъёшь? ----- z+Dw7uLu5+jqLCDq7vLu8PvpIPHs7uMh |
|
Создано: 20 декабря 2010 21:24 · Личное сообщение · #16 cppasm ты угадал первую утилиту. cppasm пишет: Я конечно спорить не буду, но по-моему у Borland обычный OMF - ничего особенного. До версии (кто говорит Delphi 3 кто Delphi 5) у них был Intel OMF формат, а потом они перешли на свой Borland OMF формат. После конвертирования coff2omf утилитой, на которую ты дал ссылку нужно получившийся OMF OBJ "борландивизировать", иначе линкер будет выдавать Bad object format. В атаче моя связка утилей, батнику coff2delphi.bat передаем sample.obj на выходе получаем d_sample.obj, который делфи уже подхватит. После этого будет еще проблема с Unresolved external reference и как сегодня столкнулся может быть F2084 Internal Error, второе лечится исключительно правильным модифицированием исходного си кода. ac98_20.12.2010_CRACKLAB.rU.tgz - coff2delphi.zip ----- Yann Tiersen best and do not fuck | Сообщение посчитали полезным: _ruzmaz_ |
|
Создано: 21 декабря 2010 21:52 · Личное сообщение · #17 |
|
Создано: 22 декабря 2010 01:01 · Личное сообщение · #18 PE_Kill пишет: cppasm ты угадал первую утилиту. cppasm пишет: Я конечно спорить не буду, но по-моему у Borland обычный OMF - ничего особенного. До версии (кто говорит Delphi 3 кто Delphi 5) у них был Intel OMF формат, а потом они перешли на свой Borland OMF формат. После конвертирования coff2omf утилитой, на которую ты дал ссылку нужно получившийся OMF OBJ "борландивизировать", иначе линкер будет выдавать Bad object format. В атаче моя связка утилей, батнику coff2delphi.bat передаем sample.obj на выходе получаем d_sample.obj, который делфи уже подхватит. После этого будет еще проблема с Unresolved external reference и как сегодня столкнулся может быть F2084 Internal Error, второе лечится исключительно правильным модифицированием исходного си кода. ac98_20.12.2010_CRACKLAB.rU.tgz - coff2delphi.zip У меня другой вопрос спецам делфи , а можно сделать delphi2coff ? ----- RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube |
|
Создано: 22 декабря 2010 09:57 · Личное сообщение · #19 Посмотри ----- Yann Tiersen best and do not fuck |
|
Создано: 22 декабря 2010 10:24 · Поправил: reversecode · Личное сообщение · #20 PE_Kill вроде не так там omf2d (converts 32bit OMF to Delphi linkable OMF)переводятся вот она там в комплекте |
|
Создано: 22 декабря 2010 10:41 · Поправил: PE_Kill · Личное сообщение · #21 Ну да, я не так понял bat файл, мне просто не совсем понятно, зачем Borland OBJ конвертируется в Borland OBJ и как он потом принимается линкером. А эта утилита включена в комплект что я выложил выше, она как раз и преобразует Intel OMF в Borland OMF. Если кто разберется, как именно Delphi Driver Development Kit скармливает OBJ файлы линкеру, поделитесь очень интересно. PS Я сначала думал, что там dcc32 от старой Delphi, которая умела Intel OMF генерить, так нет 15 версия от Delphi 7. ----- Yann Tiersen best and do not fuck |
|
Создано: 22 декабря 2010 10:56 · Поправил: reversecode · Личное сообщение · #22 |
|
Создано: 22 декабря 2010 11:14 · Личное сообщение · #23 Ну мне непонятно. dcc32 создает Borland OMF файлы. omf2d конвертирует Intel OMF в Borland OMF. Linker понимает только Intel OMF. dcc32 создает Borland OMF omf2d конвертирует Borland OMF в Borland OMF linker собирает драйвер из Borland OMF файлов. Что тут понятного? ----- Yann Tiersen best and do not fuck |
|
Создано: 22 декабря 2010 11:59 · Поправил: reversecode · Личное сообщение · #24 |
Ранг: 419.0 (мудрец), 647thx Активность: 0.46↗0.51 Статус: Участник "Тибериумный реверсинг" |
Создано: 02 февраля 2011 19:40 · Личное сообщение · #25 еще один вопрос по VС++ ! Хочу добавить к себе в проект WinAPI GetSystemWindowsDirectory(в winbase.h ее нет). Пишу: WINBASEAPI UINT WINAPI GetSystemWindowsDirectory(LPCSTR lpStr, UINT bufsize); И соответственно вызываю. Однако ругается линкер-не найден соотв. символ GetSystemWindowsDirectory_@16. Не совсем понимаю в чем ошибка!? |
|
Создано: 02 февраля 2011 19:48 · Личное сообщение · #26 |
|
Создано: 02 февраля 2011 19:48 · Личное сообщение · #27 В MSDN же написано Code:
Не надо инклюдить winbase.h, надо windows.h тогда будет находиться декларация. Code:
Т.е. линкуй с Kernel32.lib и тогда линкер не будет возмущаться ----- Реверсивная инженерия - написание кода идентичного натуральному |
<< . 1 . 2 . 3 . 4 . |
eXeL@B —› Программирование —› Вопрос по Си программированию |