Посл.ответ |
Сообщение |
Ранг: 793.4 (! !), 568thx Активность: 0.74↘0 Статус: Участник Шаман
|
Создано: 28 ноября 2010 23:54 · Поправил: PE_Kill · Личное сообщение · #1
Хех мои жалкие потуги. Буду тут флудить. Пытаюсь накодить функцию. Функция на вход получает контекст и данные, после чего распихивает эти данные в контекст. Собственно цель оптимизировать весь код эту и другие функции по размеру. Компилятор в релизе вырезает нахрен функцию и втыкает ее код прямо в основной код, как будто это макрос. Собственно вопрос, как ему сказать что мне это не нравится, но при этом оставить оптимизацию по размеру?
----- Yann Tiersen best and do not fuck | Сообщение посчитали полезным: |
|
Ранг: 793.4 (! !), 568thx Активность: 0.74↘0 Статус: Участник Шаман
|
Создано: 29 ноября 2010 19:00 · Личное сообщение · #2
Hexxx спасибо тебе, сделал просто многопоточную, и в импорте осталось только KERNEL32.DLL. Выходит не все знают о многих фишках сей, сталобыть топик то уже и не ламерский.
----- Yann Tiersen best and do not fuck | Сообщение посчитали полезным: |
Ранг: 35.0 (посетитель), 11thx Активность: 0.03↘0 Статус: Участник
|
Создано: 29 ноября 2010 20:13 · Личное сообщение · #3
ntldr пишет: Либо просто-напросто включить статический CRT, получить большой екзешник но без проблем. PE_Kill пишет: спасибо тебе, сделал просто многопоточную, и в импорте осталось только KERNEL32.DLL. Выходит не все знают о многих фишках сей, сталобыть топик то уже и не ламерский. внимательней нужно читать, а топик ламерский)
| Сообщение посчитали полезным: |
Ранг: 481.4 (мудрец), 109thx Активность: 0.18↘0 Статус: Участник Тот самый :)
|
Создано: 03 декабря 2010 00:06 · Поправил: Hexxx · Личное сообщение · #4
PE_Kill пишет: Выходит не все знают о многих фишках Ну многие еще не знают как можно сделать в VC минимальный EXE, на чистых API. И поэтому пишут на рассововерном асме... Но это уже другая история.
----- Реверсивная инженерия - написание кода идентичного натуральному | Сообщение посчитали полезным: |
Ранг: 355.4 (мудрец), 55thx Активность: 0.32↘0 Статус: Uploader 5KRT
|
Создано: 03 декабря 2010 00:57 · Личное сообщение · #5
HexxxНу многие еще не знают как можно сделать в VC минимальный EXE
----- Gutta cavat lapidem. Feci, quod potui. Faciant meliora potentes | Сообщение посчитали полезным: |
Ранг: 481.4 (мудрец), 109thx Активность: 0.18↘0 Статус: Участник Тот самый :)
|
Создано: 03 декабря 2010 14:49 · Поправил: Hexxx · Личное сообщение · #6
Я говорю про совсем пустой exe, где даже ExitProcess() надо самому вызывать. А это так, чисто оптимизации.
----- Реверсивная инженерия - написание кода идентичного натуральному | Сообщение посчитали полезным: |
Ранг: 156.1 (ветеран), 5thx Активность: 0.02↘0 Статус: Участник Капрал
|
Создано: 03 декабря 2010 15:03 · Личное сообщение · #7
Поделишься или так и будешь модничать ?
| Сообщение посчитали полезным: |
Ранг: 355.4 (мудрец), 55thx Активность: 0.32↘0 Статус: Uploader 5KRT
|
Создано: 03 декабря 2010 16:20 · Поправил: Coderess · Личное сообщение · #8
HexxxЯ говорю про совсем пустой exe, где даже ExitProcess() надо самому вызывать. А это так, чисто оптимизации.
Да, это так прикол был! HexxxМы тоже читали статью Криса про экстримальную оптимизацию компиляторов ;) Сейчас уже не вспомню названия да содержания тоже, будет лучше если поведаете незнающим
----- Gutta cavat lapidem. Feci, quod potui. Faciant meliora potentes | Сообщение посчитали полезным: |
Ранг: 481.4 (мудрец), 109thx Активность: 0.18↘0 Статус: Участник Тот самый :)
|
Создано: 04 декабря 2010 02:36 · Поправил: Hexxx · Личное сообщение · #9
Все вышеописанные оптимизации + /NODEFAULTLIB и имплементишь mainCRTStartup вместо main. Вот только тогда совсем голый EXE.
----- Реверсивная инженерия - написание кода идентичного натуральному | Сообщение посчитали полезным: |
Ранг: 355.4 (мудрец), 55thx Активность: 0.32↘0 Статус: Uploader 5KRT
|
Создано: 04 декабря 2010 12:23 · Личное сообщение · #10
Что то типа того, но 1КБ максимум меньше не могу, если строку то уже 2 или 1.5
----- Gutta cavat lapidem. Feci, quod potui. Faciant meliora potentes | Сообщение посчитали полезным: |
Ранг: 6.7 (гость) Активность: 0=0 Статус: Участник
|
Создано: 04 декабря 2010 14:20 · Личное сообщение · #11
Огого в 1 kb на С++ ассемблер отдыхает Больше ничего из кода нельзя выкинуть?
| Сообщение посчитали полезным: |
Ранг: 533.6 (!), 232thx Активность: 0.45↘0 Статус: Uploader retired
|
Создано: 04 декабря 2010 14:40 · Личное сообщение · #12
vw_ пишет: ассемблер отдыхает С каких это пор?
----- Лучше быть одиноким, но свободным © $me | Сообщение посчитали полезным: |
Ранг: 189.9 (ветеран), 334thx Активность: 0.3↘0 Статус: Участник
|
Создано: 04 декабря 2010 14:41 · Личное сообщение · #13
vw_ пишет: ассемблер отдыхает ? www.xakep.ru/post/21399/default.asp
| Сообщение посчитали полезным: |
Ранг: 35.0 (посетитель), 11thx Активность: 0.03↘0 Статус: Участник
|
Создано: 04 декабря 2010 18:41 · Поправил: sniper · Личное сообщение · #14
опять размеры обсуждаете? Coderess1) без /GS- твой код не скомпилится 2) расскажи, зачем тут /NODEFAULTLIB
| Сообщение посчитали полезным: |
Ранг: 355.4 (мудрец), 55thx Активность: 0.32↘0 Статус: Uploader 5KRT
|
Создано: 04 декабря 2010 19:10 · Личное сообщение · #15
Код не мой, а с UINC // KMiNT21, немного модифицирован мной У меня компилится по умолчанию в студии 6
----- Gutta cavat lapidem. Feci, quod potui. Faciant meliora potentes | Сообщение посчитали полезным: |
Ранг: 189.9 (ветеран), 334thx Активность: 0.3↘0 Статус: Участник
|
Создано: 04 декабря 2010 19:53 · Личное сообщение · #16
У меня на 6 только так компилится
| Сообщение посчитали полезным: |
Ранг: 6.7 (гость) Активность: 0=0 Статус: Участник
|
Создано: 04 декабря 2010 23:24 · Личное сообщение · #17
Ладно, Все повелись на провокацию by me серьезное удивление во мне вызвал результат в 1kb -- в следствии словА восторга воспринятые вами в"остроый предмет" напоминающий штык хехе NikolayD Лишнее вы понадобавляли к коду
| Сообщение посчитали полезным: |
Ранг: 481.4 (мудрец), 109thx Активность: 0.18↘0 Статус: Участник Тот самый :)
|
Создано: 04 декабря 2010 23:43 · Поправил: Hexxx · Личное сообщение · #18
vw_ пишет: ассемблер отдыхает Не отдыхает, но писать на асме исходя из того, что типа будет НАМНОГО меньше - сомнительно. Я понимаю там шелкод какой-то, но когда начинают целые драйвера писать на асме, выигрыш сомнительный. Но людям видимо нравится мазохизм.
----- Реверсивная инженерия - написание кода идентичного натуральному | Сообщение посчитали полезным: |
Ранг: 533.6 (!), 232thx Активность: 0.45↘0 Статус: Uploader retired
|
Создано: 06 декабря 2010 21:01 · Личное сообщение · #19
А вот так получится 640 байт.
----- Лучше быть одиноким, но свободным © $me | Сообщение посчитали полезным: |
Ранг: 2014.5 (!!!!), 1278thx Активность: 1.34↘0.25 Статус: Модератор retired
|
Создано: 06 декабря 2010 22:15 · Личное сообщение · #20
Чего Align не 1 тогда, уж если городить недокументированно и что не будет работать на старых виндах. А вообще глупостью занимаетесь и баяном www.phreedom.org/solar/code/tinype/
| Сообщение посчитали полезным: |
Ранг: 191.8 (ветеран), 46thx Активность: 0.17↘0 Статус: Участник
|
Создано: 07 декабря 2010 02:02 · Личное сообщение · #21
до кучи www.magma.ca/~wjr/PEview.zip
| Сообщение посчитали полезным: |
Ранг: 516.1 (!), 39thx Активность: 0.28↘0 Статус: Участник
|
Создано: 07 декабря 2010 08:16 · Личное сообщение · #22
спрашивается нафига, тоже болел какое-то время минимальными эксешниками и пришел к выводу - пусть лучше microsoft пишет crt, чем я буду тратить на это время изобретая велосипед и потом ко всему этому вылавливать ошибки при работе с многопоточностью и т.п.
| Сообщение посчитали полезным: |
Ранг: 331.1 (мудрец), 561thx Активность: 0.19↘0.06 Статус: Участник
|
Создано: 07 декабря 2010 09:15 · Личное сообщение · #23
Av0id пишет: пришел к выводу - пусть лучше microsoft пишет crt, чем я буду тратить на это время изобретая велосипед +100, пусть лучше прога будет полнофункциональной, чем обрубком минимального размера
----- Everything is relative... | Сообщение посчитали полезным: |
Ранг: 17.0 (новичок) Активность: 0.02↘0 Статус: Участник
|
Создано: 08 декабря 2010 04:46 · Личное сообщение · #24
Подскажите как скомпилить этот код
MV C++ 6 выдаёт такую ошибку C:\Program Files\Microsoft Visual Studio\MyProjects\antidebug\main.cpp(7) : error C2065: 'IsDebuggerPresent' : undeclared identifier
| Сообщение посчитали полезным: |
Ранг: 793.4 (! !), 568thx Активность: 0.74↘0 Статус: Участник Шаман
|
Создано: 08 декабря 2010 07:34 · Личное сообщение · #25
Так в MSDN же написано: BOOL IsDebuggerPresent(void);
To compile an application that uses this function, define the _WIN32_WINNT macro as 0x0400 or laterТ.е. нужен #define _WIN32_WINNT 0x0400 в stdafx.h
----- Yann Tiersen best and do not fuck | Сообщение посчитали полезным: |
Ранг: 17.0 (новичок) Активность: 0.02↘0 Статус: Участник
|
Создано: 08 декабря 2010 15:37 · Личное сообщение · #26
В эттаче список хидеров которые есть в директории инклуд. Примечательно то что нету stdafx.h. Попробовал в наглую определить дэфайн после инклудов всё равно та же самая ошибка. Пожалуйста скиньте у кого есть этот самый stdafx.h 06cf_08.12.2010_CRACKLAB.rU.tgz - headers.txt
| Сообщение посчитали полезным: |
Ранг: 331.1 (мудрец), 561thx Активность: 0.19↘0.06 Статус: Участник
|
Создано: 08 декабря 2010 15:42 · Личное сообщение · #27
neoBlinXaker пишет: Пожалуйста скиньте у кого есть этот самый stdafx.h Делай AFX проект Win32 и получишь этот файл в директории проекта, а в инклюдах его и не должно быть.
----- Everything is relative... | Сообщение посчитали полезным: |
Ранг: 164.6 (ветеран), 65thx Активность: 0.12↘0 Статус: Участник Волшебник
|
Создано: 08 декабря 2010 16:20 · Личное сообщение · #28
neoBlinXaker пишет: Попробовал в наглую определить дэфайн после инклудов всё равно та же самая ошибка. Попробуй определить его ДО инклудов.
----- Следуй за белым кроликом | Сообщение посчитали полезным: |
Ранг: 527.7 (!), 381thx Активность: 0.16↘0.09 Статус: Участник Победитель турнира 2010
|
Создано: 08 декабря 2010 18:03 · Поправил: OKOB · Личное сообщение · #29
Консольное приложение под VC++ v6.0 с твоим кодом. Все собирается. За решением загляни в файл stdafx.h Или вообще так
d7b8_08.12.2010_CRACKLAB.rU.tgz - debbbug.rar
----- 127.0.0.1, sweet 127.0.0.1 | Сообщение посчитали полезным: NikolayD |
Ранг: 189.9 (ветеран), 334thx Активность: 0.3↘0 Статус: Участник
|
Создано: 08 декабря 2010 18:16 · Личное сообщение · #30
neoBlinXaker читай напрямую:
| Сообщение посчитали полезным: |
Ранг: 2014.5 (!!!!), 1278thx Активность: 1.34↘0.25 Статус: Модератор retired
|
Создано: 08 декабря 2010 18:38 · Личное сообщение · #31
Все эти асм-вставки делать крайне не рекомендуется в сколько-нибудь крупных проектах, если не хотите поиметь геморрой с портабельностью, ибо это всё костыли. В том же х64 это работать не будет.
| Сообщение посчитали полезным: Oott |