Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по программированию на Assembler

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133

Открыть новую тему     Написать ответ в эту тему

ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Обсуждаются все вопросы, связанные с программированием на Ассемблере как общего так и конкретного характера.
 
важное примечание
для тех кто считает, что здесь место халявных исполнений курсовых и лабораторных работ.
тут обычно помогают тем, кто сам хоть что-то пытается понять и сделать, но что-то не понимает, что-то не получается...
ведь ассемблер изучают и задачки на нём дают обычно не менеджерам по продажам и даже не всем физ.-мат. специальностям
вы сами избрали этот путь? вот и идите по нему сами, ножками... с ручками и с головой...
 
короче, тут не сборище придурков-альтруистов, которым нечего делать и они ждут-не дождутся когда вы их попросите
что-то сделать _за_ вас
если позарез надо и вы даже готовы заплатить, тогда вам сюда
удачи
 
некоторые ресурсы
http://www.wasm.ru/ Самый популярный русскоязычный ресурс. https://wasm.in/
Ассемблер - книги (ASM, Assembler)
 
Просьба все большие листинги оформлять тегом more.
 
если вам вдруг не отвечают или ответ вас не устраивает
и вообще полезно прочитать всем спрашивающим

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 01:42 29-11-2006 | Исправлено: akaGM, 17:44 11-06-2020
anmiles



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Internal copy of file 'C:\Windows\system32\USER32.dll' was modified. Choose 'Save file' from popup menu if you want to save modifications to disk.

 
Атата?

Всего записей: 19 | Зарегистр. 19-11-2008 | Отправлено: 20:13 17-02-2012
MERCURY127



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Юзер32.длл ... Не, это ты что то не то сделал. Тебе надо Исходный бинарник пропатчить, например в Хиев

Всего записей: 11563 | Зарегистр. 03-08-2008 | Отправлено: 20:32 17-02-2012
anmiles



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Судя по моим же скриншотам, тело метода, которое я собирался забить нопами, находится в user32.dll
http://files.anmiles.net/img/shots/2012-02-17_190340.png
 
А вот вызывается этот метод из искомого бинарника
http://files.anmiles.net/img/shots/2012-02-17_194545.png
 
Следовательно, надо править место вызова? CALL DWORD PTR DS:[<&USER32.CreateWindowExA>]
Забил нопами, теперь изменённый экзешник при запуске вываливается в эксепшн.  
Значит надо делать что-то другое? В принципе, для меня достаточно будет сделать этому окну нулевые размеры или сделать его невидимым. Судя по нижнему окну, все эти аргументы присутствуют в вызове USER32.CreateWindowExA из основной программы:
http://files.anmiles.net/img/shots/2012-02-17_204153.png
 
Можно ли их поменять?

Всего записей: 19 | Зарегистр. 19-11-2008 | Отправлено: 20:42 17-02-2012
cp58

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
anmiles
Найдите далее вызов функции ShowWindow и вторым параметром передайте SW_HIDE(0).

Всего записей: 295 | Зарегистр. 06-12-2011 | Отправлено: 21:00 17-02-2012
anmiles



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Пришлось опять включить интуицию. Протрейсил вниз от этой строчки "CALL DWORD PTR DS:[<&USER32.CreateWindowExA>]", нашёл там RETN 8, а потом место CALL, откуда весь этот большой кусок кода вызывается. И в самую первую строчку куска воткнул такой же RETN 8. Дебаг показал, что теперь вся эта кухня с окном пропускается полностью. Пропатчил, вроде заработало .

Всего записей: 19 | Зарегистр. 19-11-2008 | Отправлено: 21:18 17-02-2012 | Исправлено: anmiles, 21:19 17-02-2012
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
наливай...

Всего записей: 24112 | Зарегистр. 06-12-2002 | Отправлено: 21:43 17-02-2012
A1exSun



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В чем можно писать на винде х64, чтоб код был полностью совместим с 16 битовым тасмом?

Всего записей: 1871 | Зарегистр. 25-11-2009 | Отправлено: 16:13 03-03-2012
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
в 16 битовом тасме и написать

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 16:19 03-03-2012
A1exSun



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bomzzz
Винда х64, тасм х16 соответственно не запускается.
Виртуалка, на ней тасм - слишком неудобно... Досбокс тоже.

Всего записей: 1871 | Зарегистр. 25-11-2009 | Отправлено: 16:31 03-03-2012
doktorpilulkin

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
64 битная винда вообще неудобно.

Всего записей: 2341 | Зарегистр. 30-08-2010 | Отправлено: 16:34 03-03-2012
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
A1exSun

Цитата:
В чем можно писать на винде х64, чтоб код был полностью совместим с 16 битовым тасмом?
masm64, писать в классическом стиле и использовать только 16-битовые регистры

Всего записей: 24112 | Зарегистр. 06-12-2002 | Отправлено: 17:12 03-03-2012
cp58

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
A1exSun
А смысл выбирать в чем писать х16 приложения, если запускать все равно придется в виртуальной машине, так как x64 процессоры в long mode(в котором работает x64 windows система) не поддерживают виртуализацию x16 задач. Можно также установить x32 windows(legacy mode), в таком случае все запустится без проблем.

Цитата:
Виртуалка, на ней тасм - слишком неудобно... Досбокс тоже.

Чем неудобно? Есть еще qemu, где очень удобная консоль для работы с виртуальной машиной.

Всего записей: 295 | Зарегистр. 06-12-2011 | Отправлено: 18:07 03-03-2012
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ему надо просто 32 битную винду поставить и моск себе не парить

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 18:11 03-03-2012
A1exSun



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
doktorpilulkin

Цитата:
64 битная винда вообще неудобно.

Удобно.
akaGM
И все окай будет работать?
cp58

Цитата:
Чем неудобно?

Редактировать код приходиться в той же виртуалке...
bomzzz

Цитата:
ему надо просто 32 битную винду поставить и моск себе не парить

Не нужно мне 32 бит винду.
 
Я хочу сейчас писать в каком-то большом IDE, а потом перекомпилировать тасмом под х16. Так невозможно?

Всего записей: 1871 | Зарегистр. 25-11-2009 | Отправлено: 18:47 03-03-2012
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
A1exSun
VS 2010, писать на ml64 при условии что ты хорошо знаешь классический асм
+
ну может придётся немного заняться условной компиляцией...
 
а вообще я думал, что твои идиотские задатодатели со своими идиотскими заданиями быстрее отваляться или всё-таки купят хотя бы один четвёртый пень с Win98...

Всего записей: 24112 | Зарегистр. 06-12-2002 | Отправлено: 19:01 03-03-2012
A1exSun



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
akaGM
Ладно. Ставлю XP в виртуалку и не трахаю себе мозг. В ней в RedASM писать или в чем?
Скачивать RadASM IDE Pack, RadASM Language Pack и RadASM Assembly Programming Pack?
Или что лучше? Нужен хороший дебаггер.
Я писал бы все в emu8086, но там иногда кое-чего не хватает.

Всего записей: 1871 | Зарегистр. 25-11-2009 | Отправлено: 19:07 03-03-2012 | Исправлено: A1exSun, 19:12 03-03-2012
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
или всё-таки купят хотя бы один четвёртый пень с Win98.
   
 
 
Добавлено:
98 винда на 486 пойдет, можно маненька съеканомит
 
Добавлено:
а себе он предпочел купить модный комп поставить 64 винду, чтоб потом поставить хп32 на виртуалке
 
Добавлено:
и все потому что памяти ему всучили больше 4 гигов. чтоб он дома мог спутниковые орбиты рассчитывать

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 19:09 03-03-2012
A1exSun



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bomzzz
Откуда ты все знаешь?

Всего записей: 1871 | Зарегистр. 25-11-2009 | Отправлено: 19:21 03-03-2012
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
я вообще то просто смеялся сильно. но обычно ставят 64 битную потому что думают что под 32 нельзя памяти больше 3-4 гиг использовать
 
Добавлено:
хотя столько памяти нужно или для серверов, или для каких то баз огромных, а 64 бита для огромных вычислений. потом сидят без дров и без софта

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 19:23 03-03-2012
A1exSun



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bomzzz

Цитата:
ставят 64 битную потому что думают что под 32 нельзя памяти больше 3-4 гиг использовать

Памяти у меня действительно 4 Гб и на 32 будет доступно вроде 3.24, но это не проблема. Пользуюсь 64 потому что вправду быстрее работает. И не хочу ради одного тасма (если бы не универ, то он мне нафиг надо) все рушить.
 
Добавлено:

Цитата:
хотя столько памяти нужно или для серверов, или для каких то баз огромных

Я максимум умудрялся только 3 загрузить.

Цитата:
потом сидят без дров и без софта

Все драйвера  и половина софта х64.

Всего записей: 1871 | Зарегистр. 25-11-2009 | Отправлено: 19:28 03-03-2012
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по программированию на Assembler


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru