Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: программирование на языке Assembler


Информационный Канал Subscribe.Ru

RusFAQ.ru: программирование на языке Assembler

Выпуск № 698
от 20.02.2004, 10:50

Администратор:
Имя: Калашников О.А.
URL: Информационный ресурс
ICQ: 68951340
Россия, Москва
О рассылке:
Задано вопросов: 4972
Отправлено ответов: 13829
Активность: 278.1 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

_vt
Статус: Профессиональный
Общий рейтинг: 117.82
URL: Тест
[Подробней >>]
Ayl
Статус: Профессиональный
Общий рейтинг: 116.56
[Подробней >>]
Artemy
Статус: Опытный
Общий рейтинг: 115.96
Телефон: 8 905 549 38 66
[Подробней >>]
 
Dark_Lord
Статус: Профессиональный
Общий рейтинг: 110.17
[Подробней >>]
never_again
Статус: Опытный
Общий рейтинг: 123.13
[Подробней >>]
vitya
Статус: Профессиональный
Общий рейтинг: 108.61
[Подробней >>]
 
Portnov
Статус: Профессиональный
Общий рейтинг: 107.01
URL: Мой сайтик...
[Подробней >>]
Maverick
Статус: Профессиональный
Общий рейтинг: 119.95
URL: Эхоконференция по вирмейкингу
[Подробней >>]
Евгений Иванов
Статус: Профессиональный
Общий рейтинг: 135.44
URL: Super Assembler Software
Телефон: Пчёлка +7 905 6601206
[Подробней >>]
 
Hangatyr
Статус: Профессиональный
Общий рейтинг: 107.86
[Подробней >>]
ASMодей
Статус: Профессиональный
Общий рейтинг: 112.16
[Подробней >>]
Andrew Vext
Статус: Профессиональный
Общий рейтинг: 103.24
[Подробней >>]
 
SedHg
Статус: Доверительный
Общий рейтинг: 112.59
[Подробней >>]
VOVAN
Статус: Доверительный
Общий рейтинг: 107.46
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 4933. Пожалуйста, ктонить киньте ссылочкуна архив рассылки под ДОС. Тоже хотся многое понять... Заранее бл... (ответов: 1)
Вопрос № 4935. Доброго времени суток, уважаемые. Вот я вычитал у Зубкова, что если открыть файл на чтение-запись, ... (ответов: 2)
Вопрос № 4937. Здравствуйте, Эксперты. Может вопрос чуть в offtopic, но у меня это не работает именно на ассемблере... (ответов: 1)
Вопрос № 4938. Здравствуйте уважаемые эксперты, возникла у меня значит следующая ситуация, занятия по рассылке врод... (ответов: 1)
Вопрос № 4939. физкульт привет господа программеры у меня тут дво вопроса назрело: 1) когда я пытаюсь компилить про... (ответов: 1)
Вопрос № 4940. > Чего,эти все АPI функции надо запоминать, а потом ручками ?набирать? А ты чего хотел, что компилят... (ответов: 1)
Вопрос № 4941. Последнее время задумался над вопросом-кто я?И не смог ответить.Я за компом 4 года (игры,игры,игры)а... (ответов: 3)
Вопрос № 4942. Столкнулся с проблемой загрузчика PE в win2k. Использую SEH/PEB методы для получения модуля kernel32... (ответов: 1)
Вопрос № 4943. Дорогие эксперты. Просветите, как сделать так чтобы отладчик ICESoft понимал программы com или exe (... (ответов: 1)
Вопрос № 4944. Доброго времени суток, уважаемые эксперты!!! Подскажите пожалуйста как из соm-файла определить его ж... (ответов: 2)
Вопрос № 4945. здравствуйте еще раз для _VT да и для всех остальных: 1) asciiz-строка: file db 'c:command.com',0 ... (ответов: 1)
Вопрос № 4946. Доьрого времени суток!!!!! Дополнение по вопросу №4944(Подскажите пожалуйста как из соm-файла опреде... (ответов: 2)
Вопрос № 4947. для vc: все теперь заработало, но я голову даю на отсечение, что я компилировал именно вот такую про... (ответов: 1)
Вопрос № 4948. Здравствуйте. Хотя вопрос несколько и не в тему, но всёже. Существует ли сортировка за линейное врем... (ответов: 2)
Вопрос № 4950. Пытаюсь скомпилировать следующий код в Masm 6.14.8444 obj файл создается, пишу ml.exe file.asm /AT /... (ответов: 1)
Вопрос № 4952. Здравствуйте, многоуважаемые гении! Может быть вам покажется этот вопрос странным, но: Как можно уме... (ответов: 2)
Вопрос № 4953. Подскажите пожалуйста, как принудительно перезагрузить Win98 без всяких предупреждений и рассылок со... (ответов: 1)
Вопрос № 4954. Здравствуйте, Эксперты! Как мне получить Message об изменении в RichEdit20. Мой пример почемуто не р... (ответов: 1)

Вопросов: 18, ответов: 25


 Вопрос № 4933

Пожалуйста, ктонить киньте ссылочкуна архив рассылки под ДОС.
Тоже хотся многое понять...
Заранее благодарен.



Вопрос отправлен: 11.02.2004, 13:20
Отправитель: Владимир

[Следующий вопрос >>] [Список вопросов]

Отвечает _vt

Доброе время суток, Владимир!
http://www.kalashnikoff.ru/issues.exe
--- E-Man 1.5+ : Sorry for terrible english. My native language is C++


Ответ отправлен: 11.02.2004, 20:37
Отправитель: _vt


 Вопрос № 4935


Доброго времени суток, уважаемые.
Вот я вычитал у Зубкова, что если открыть файл на чтение-запись, удалить его, и продолжить запись в файл, то так можно снести ФАТ(таблицу размещения файлов). Это так? И если да, то винда позволит так сделать? А под НТФС работать будет?
С уважением, и все такое.
P.S. немного о себе: молодой человек, люблю много пива, из-за чего склонен к полноте :)



Вопрос отправлен: 11.02.2004, 21:08
Отправитель: nitzshe

[Следующий вопрос >>] [Список вопросов]

Отвечает Ayl

Добрый день, nitzshe!
Снести - не снести, но напортить можно. Думаю, что и под виндой прокатит, но не на NTFS, т.к. там другая организация данных о файле.
А по поводу ФАТ - то после таких действий поможет NDD. Он восстановит файл как цепочку потерянных кластеров.
Кстати, винда вполне может лочить файл, тогда фишка не прокатит.


Ответ отправлен: 12.02.2004, 10:23
Отправитель: Ayl


Отвечает Artemy

Здравствуйте, nitzshe!
Операционка не даст удалить файл, если он открыт для записи.

Ответ отправлен: 12.02.2004, 13:12
Отправитель: Artemy


 Вопрос № 4937

Здравствуйте, Эксперты.
Может вопрос чуть в offtopic, но у меня это не работает именно на ассемблере:
пишу
.data
User32 db "User32.dll",0
hUser dd ?
.code
invoke GetModuleHandle, addr User32
mov hUser, eax
invoke ExitProcess, 0
И почему-то после получения дескриптора библиотеки User32.dll в eax оказывается ноль, а вот если получать дескриптор kernel32, то все нормально работает, так где ж загвоздка? Помогите!!!
(На делфи все нормально работает)



Вопрос отправлен: 11.02.2004, 23:58
Отправитель: akvilon (akvilon@km.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает Dark_Lord

Добрый день, akvilon!
Скорее всего получается значение, в котором выставлен лишь старший байт (например 80000000h). Посмотрите внимательнее!

Ответ отправлен: 12.02.2004, 15:26
Отправитель: Dark_Lord


 Вопрос № 4938

Здравствуйте уважаемые эксперты, возникла у меня значит следующая ситуация, занятия по рассылке вроде идут нормально, дошел до 12 выпуска, однако чувствую что не хватает больше именно практической работы, т.е. написание программ, хотелось бы Вас попросить подбросить несколько заданий, для самостоятельного решения, или возможно подсказать где в сети можно найти упражнения.

Заранее благодарю за возможные ответы.
С уважением,
Владимир.



Вопрос отправлен: 12.02.2004, 08:56
Отправитель: Vladimir

[Следующий вопрос >>] [Список вопросов]

Отвечает never_again

Приветствую Вас, Vladimir!
напиши программу по роздаче карт.
В колоде 52 карты. Пользователь вводит кол-во играков и кол-во карт у каждого. Программа должна:
а) перетасовать колоду
б) роздать карты (повторов быть не должно!!!)
в) показать какие карты остались в прикупе.

Ответ отправлен: 12.02.2004, 15:48
Отправитель: never_again


 Вопрос № 4939

физкульт привет господа программеры у меня тут дво вопроса назрело:
1)
когда я пытаюсь компилить программу в которой есть функция использующая ASCIIZ-строку ассм мне пишет:
Assembling file: s1.asm to 1.OBJ
**Error** s1.asm(12) Expecting scalar type
почему?? (у меня TASM
2)
ПОЖАЛУЙСТА раскажите мне что такое MCB-блок и с чем его едят и как с помощью него резидента сожать, у меня есть программа для примера но я ни как понять не могу как именно это происходит....


Приложение:


Вопрос отправлен: 12.02.2004, 13:46
Отправитель: очень хочу научиться

[Следующий вопрос >>] [Список вопросов]

Отвечает _vt

Добрый день, очень хочу научиться!
MCB (Memory Control Block) - это официально недокументированная структура MS-DOS, которую можно использовать для управлениями задачами(!) в однозадачной среде DOS. И такими "задачами" могут являться резиденты. Например, если ты в Volcov Commander версии младше 4.05 нажмешь Alt-F5, ты увидишь список запущенных "процессов", которыми в некоторых случаях VC может управлять (если они запущены после него). Там как раз указана информация о блоках памяти, занятом размере и т.д. В твоем примере, резидент записывается в память, получив адрес свободного MCB-блока из предоставленной ему PSP(структура, заполняемая для каждой программы досом) без использования прерываний (Это может использоваться в вирусах, для обмана антивирусов). Спрашивай, какие конкретно строки тебе непонятны.
А по поводу строк - может ты их в двойные кавычки берешь, а не в одинарные? Приведи пример, как ты записываешь строку.
--- E-Man 1.5+ : Sorry for terrible english. My native language is C++


Ответ отправлен: 13.02.2004, 01:47
Отправитель: _vt


 Вопрос № 4940

> Чего,эти все АPI функции надо запоминать, а потом ручками ?набирать?
А ты чего хотел, что компилятор за тебя их сам вставлял?
Спасибо Bob Johnson за ответ. Ответный вопрос тебе и всем уважаемым экспертам.
Слышали ли вы по поводу Visual Assembler. Я видел alpha версию. Впечатляет но пока не совсем работает.



Вопрос отправлен: 12.02.2004, 14:41
Отправитель: Hirurg (HirurgMARB@tut.by)

[Следующий вопрос >>] [Список вопросов]

Отвечает never_again

Доброе время суток, Hirurg!
RadAsm даёт окно со списком API (как в VB)

Ответ отправлен: 12.02.2004, 15:50
Отправитель: never_again


 Вопрос № 4941

Последнее время задумался над вопросом-кто я?И не смог ответить.Я за компом 4 года (игры,игры,игры)а последний год помогаю друзьям и знакомым,ставить windows,устранять неполадки.Даю какие-то советы.И вдруг я понял,что я ноль без палочки то есть знаний ни каких.Вот я и решил выучить Ассемблер,а с чего начать не знаю-посоветуйте прошу Вас!



Вопрос отправлен: 12.02.2004, 17:54
Отправитель: kolxida (kolxida@hotbox.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает never_again

Добрый день, kolxida!
>>Последнее время задумался над вопросом-кто я? И не смог >>ответить.Я за компом 4 года (игры,игры,игры)
Игры, игры - это геймер.
>>а последний год помогаю друзьям и знакомым,ставить >>windows,устранять неполадки.Даю какие-то советы.
А это уже продвинутый юзер.
>>Вот я и решил выучить Ассемблер, а с чего начать не знаю->>посоветуйте прошу Вас
Весьма похвально, но для самого начала, если ты полный ноль в программировании, то начать нужно с чего нибудь по-проще. С Си или даже Бэйсика (да простят меня мои коллеги эксперты за упоминание этого подобия настоящего языка программирования!). Когда ухватишь основную идею и основные принципы общения с машиной на уровне программист-компьютер тогда и можно и даже нужно преступать к изучению ассемблера.
Удачи.
Книг печатных и электронных по ассемблеру

Ответ отправлен: 12.02.2004, 22:59
Отправитель: never_again


Отвечает vitya

Доброе время суток, kolxida!
с теоретических основ вычислительной техники.

Ответ отправлен: 13.02.2004, 08:34
Отправитель: vitya


Отвечает Portnov

Добрый день, kolxida!
М-да.
Много лет размышлял я над жизнью земной.
Непонятного нет для меня под луной.
Мне известно, что мне ничего не известно -
Вот последняя правда, открытая мной.
(С) Омар Хайям.
Я бы рекомендовал начать с рассылки Калашникова. Заходите на RusFAQ.ru, жмете на ссылку "Ассемблер". Еще посмотрите kalashnikoff.ru, может там чего нового появилось.
С уважением, Portnov.

Ответ отправлен: 13.02.2004, 13:01
Отправитель: Portnov


 Вопрос № 4942

Столкнулся с проблемой загрузчика PE в win2k. Использую SEH/PEB методы для получения модуля kernel32, весь импорт ф-й идет через чтение экспорт таблицы kernel'а, а затем и других dll. Получается экзешник без таблицы импорта. Все отлично работает в 95/98/xp, но под 2k такой файл просто не стартует, не выводит каких-либо ошибок. Может кто-то имел дело с аналогичной проблемой, каким образом можно решить ее (импорт 1 ф-и не предлагать).



Вопрос отправлен: 12.02.2004, 23:42
Отправитель: coban2k

[Следующий вопрос >>] [Список вопросов]

Отвечает Maverick

Здравствуйте, coban2k!
Непонял... что ты подразумеваешь под словом весь импорт ф-ий... Т.е. ты просто нашел адреса ф-ий апи и вызываешь их?
Все должно работать, давай исходник.
maverick@nightmail.ru


Ответ отправлен: 15.02.2004, 09:04
Отправитель: Maverick


 Вопрос № 4943

Дорогие эксперты. Просветите, как сделать так чтобы отладчик ICESoft понимал программы com или exe (Tasm). А то он постоянно ругается что ему что-то не хватает. Какие есть
хорошие дизассемблеры под Винду. Я пока только разобрался с Turbo Debugger. Как можно устроить чтобы в дизассемблере были видны метки, которые я использую в программе. Спасибо.



Вопрос отправлен: 13.02.2004, 00:56
Отправитель: Hirurg (HirurgMARB@tut.by)

[Следующий вопрос >>] [Список вопросов]

Отвечает _vt

Добрый день, Hirurg!
ICESoft - это SoftICE? Так он для программ под Windows, а ты пишешь DOS-программы (com-программ под Windows не бывает). А для того, чтобы были видны метки и прочая информация, нужно компилировать программу с отладочной информацией.
(tasm /zi prog.asm, tlink /v prog.obj)
Используй Turbo Debugger.
--- E-Man 1.5+ : Sorry for terrible english. My native language is C++


Ответ отправлен: 13.02.2004, 01:47
Отправитель: _vt


 Вопрос № 4944

Доброго времени суток, уважаемые эксперты!!!
Подскажите пожалуйста как из соm-файла определить его же размер!!!
Спасибо!!!



Вопрос отправлен: 13.02.2004, 00:57
Отправитель: Alexandr (kunash@yandex.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает Евгений Иванов

Приветствую Вас, Alexandr!
Ставь метку на последний байт.
Но использовать будет сложно.
Советую просто сделать постоянную.
И после пробного ассемблирования смотреть размер файла и подставлять это значение этой постоянной...
Удачи!
* EMan: -=- Любовь существует! =-=


Ответ отправлен: 13.02.2004, 01:31
Отправитель: Евгений Иванов


Отвечает Dark_Lord

Здравствуйте, Alexandr!
Од же статический! Делаешь метку после в конце файла и в программе, при компиляции используешь "end-start", где start и end метки начала и конца файла

Приложение:

Ответ отправлен: 13.02.2004, 08:24
Отправитель: Dark_Lord


 Вопрос № 4945

здравствуйте еще раз
для _VT да и для всех остальных:
1) asciiz-строка: file db 'c:command.com',0
2) непонятна практически вас программа, но особено непонятно вот эти строки: (см. приложение)

спасибо...


Приложение:


Вопрос отправлен: 13.02.2004, 07:59
Отправитель: очень хочу научиться

[Следующий вопрос >>] [Список вопросов]

Отвечает _vt

Доброе время суток, очень хочу научиться!
1) Всё равно непонятно - приведи пример программы, где возникает такая ошибка.
2) Ну приведенный тобой кусок - стандартный механизм передачи данных из одного куска памяти в другой, используя команду процессора movsb. При выполнении данной команды, копируется байт из адреса на который указывают регистры ds:si в адрес, на который указывают регистры es:di. Кроме того, используется вместе с командой movsb специальный префикс repe, позволяющий повторить копирование данных столько раз, сколько необходимо, и это значение задается регистром cx. Итого: сначала настраиваются регистры es:di (в es кладется адрес свободного сегмента памяти, di обнуляется) и ds:si(сюда кладется сегмент и смещение тела резидента). Потом в cx кладется количество байт, занимаемых резидентом, очищается флаг направления(DF, командой CLD - для правильной работы инструкции movsb) и собственно выполняется команда repe movsb.
--- E-Man 1.5+ : Sorry for terrible english. My native language is C++


Ответ отправлен: 13.02.2004, 10:41
Отправитель: _vt


 Вопрос № 4946

Доьрого времени суток!!!!!
Дополнение по вопросу №4944(Подскажите пожалуйста как из соm-файла определить его же размер!!!)
:
нужно определить сколько занимает файл на диске,а не размер кода, т.к. после кода имеется еще инфа, размер которой и надо определить как разность между размером файла на диске и размером кода программы ( это небольшой com-вирус)



Вопрос отправлен: 13.02.2004, 21:19
Отправитель: Alexandr

[Следующий вопрос >>] [Список вопросов]

Отвечает Hangatyr

Добрый день, Alexandr!
А что, вариант открыть файл и установить указатель на конец вас не устраивает? Если да, то по какой причине?

Ответ отправлен: 15.02.2004, 15:29
Отправитель: Hangatyr


Отвечает ASMодей

Доброе время суток, Alexandr!
Размер кода - это и есть размер COM-файла, никакой инфы после кода программы быть не должно. А на диске он конечно занимает место кратное размеру сектора/кластера, но в память этот мусор не грузится, так что из самой программы - размер файла = размер кода + размер данных.

Ответ отправлен: 16.02.2004, 11:33
Отправитель: ASMодей


 Вопрос № 4947

для vc:
все теперь заработало, но я голову даю на отсечение, что я компилировал именно вот такую программу: (см. прил)
и он мне писал: expecting scalar type (вроде так)


Приложение:


Вопрос отправлен: 14.02.2004, 10:29
Отправитель: очень хочу научиться

[Следующий вопрос >>] [Список вопросов]

Отвечает ASMодей

Здравствуйте, очень хочу научиться!
Скорее всего ты вместо латинской буквы написал русскую и не заметил, а компилятор заметил :)

Ответ отправлен: 16.02.2004, 11:34
Отправитель: ASMодей


 Вопрос № 4948

Здравствуйте.
Хотя вопрос несколько и не в тему, но всёже.
Существует ли сортировка за линейное время?
Если да, то хотелось бы увидеть её реализацию или ссылочку.
Если нет, то какая на данный момент самая быстрая сортировка(из всех мною увиденных, самой быстрой была Сортировка Хоара) и хотелось бы увидеть доказательство невозможности сортировки за линейное время?
Спасибо.



Вопрос отправлен: 14.02.2004, 22:40
Отправитель: Алексей

[Следующий вопрос >>] [Список вопросов]

Отвечает Andrew Vext

Добрый день, Алексей!
Почитайте третий том Кнута - там все очень подробно рассмотрено (к сожалению, приводить все выкладки в письме невозможно).
Если книги нет, скачайте электронный вариант
http://dit.odessit.org/sitenews.htm


Ответ отправлен: 16.02.2004, 13:02
Отправитель: Andrew Vext


Отвечает vitya

Добрый день, Алексей!
Существует - но только для целых чисел - называется ведерная (Bucket) сортировка.
Из обычных сортировка слиянием и quicksort. Первая в худшем случае nlogn, но требует доп пространства. quicksort вхудшем случае n^2, но в среднем nlogn.

Ответ отправлен: 15.02.2004, 10:48
Отправитель: vitya


 Вопрос № 4950

Пытаюсь скомпилировать следующий код в Masm 6.14.8444
obj файл создается, пишу ml.exe file.asm /AT /c
а вот Link.exe file.obj /t выдает ошибку...
в чем проблема ?


Приложение:


Вопрос отправлен: 15.02.2004, 13:18
Отправитель: Ti

[Следующий вопрос >>] [Список вопросов]

Отвечает ASMодей

Здравствуйте, Ti!
У меня MASM 6.13 нормально скомпилировал. Какая ошибка-то хоть была?

Ответ отправлен: 16.02.2004, 11:38
Отправитель: ASMодей


 Вопрос № 4952

Здравствуйте, многоуважаемые гении!
Может быть вам покажется этот вопрос странным, но:
Как можно уменьшить размер EXE\'шника для виндовоза?
Пример: программа, которая просто выводит MessageBox занимает 2,5 кб. Посмотрел, что у него внутри... А там столько всего не нужного... :)
Заранее спасибо за помощь.
Всего доброго.



Вопрос отправлен: 15.02.2004, 16:35
Отправитель: UKY

[Следующий вопрос >>] [Список вопросов]

Отвечает _vt

Доброе время суток, UKY!
Уменьшать еще меньше бессмысленно, т.к. на диске файлы хранятся блоками как минимум по 4кБ, а Windows работает оптимальнее с секциями кода программы по 512 байт. В простейшем случае, минимальный размер программы, при соответствующих ключах линкера, будет составлять 512 байт на секцию кода и данных (необходимо использовать опции объединения секций) и 512 байт на PE-заголовок. Его можно уменьшить до нескольких байт, но выигрыша ни в скорости работы ни в экономии места на диске не получится.
--- E-Man 1.5+ : Sorry for terrible english. My native language is C++


Ответ отправлен: 17.02.2004, 00:39
Отправитель: _vt


Отвечает SedHg

Здравствуйте, UKY!
А что по Вашему там лишнее? Лишним может показаться только количество нулей.
Могу предложить два варианта: любо паковать файлы, либо писать на FASM.


Ответ отправлен: 19.02.2004, 16:23
Отправитель: SedHg


 Вопрос № 4953

Подскажите пожалуйста, как принудительно перезагрузить Win98 без всяких предупреждений и рассылок сообщений приложениям.



Вопрос отправлен: 16.02.2004, 09:50
Отправитель: Artem

[Следующий вопрос >>] [Список вопросов]

Отвечает VOVAN

Добрый день, Artem!
reset'ом

Ответ отправлен: 17.02.2004, 21:06
Отправитель: VOVAN


 Вопрос № 4954

Здравствуйте, Эксперты!
Как мне получить Message об изменении в RichEdit20.
Мой пример почемуто не работает:
.if uMsg==WM_INITDIALOG
invoke GetDlgItem,hWin,4501 ; это Static для помещения Rich
; в нужное место в диалоге
mov hhRich, eax
invoke LoadLibrary, CTEXT("RICHED20")
invoke CreateWindowEx, WS_EX_CLIENTEDGE,CTEXT("RichEdit20A"), NULL,
WS_MAXIMIZE or WS_CHILDWINDOW or ES_MULTILINE or
ES_SAVESEL or WS_VSCROLL or WS_HSCROLL or ES_AUTOHSCROLL or ES_AUTOVSCROLL or ES_NOHIDESEL or ES_WANTRETURN,
0, 0, 400, 400, hhRich, NULL, hInstance, NULL
mov hRichEdit, eax
invoke SendMessage,hRichEdit,EM_EMPTYUNDOBUFFER,0,0
....
invoke MoveWindow,hhRich, 135, 0, 300,200,TRUE
invoke ShowWindow, hRichEdit, SW_SHOWNORMAL
.elseif uMsg==WM_COMMAND
mov eax,wParam
mov edx,eax
shr edx,16
and eax,0FFFFh
.if dx==EN_CHANGE
invoke MessageBox,NULL,ADDR text,ADDR text,MB_OK
mov hEditChange,1
.endif
...



Вопрос отправлен: 16.02.2004, 10:46
Отправитель: Andrei

[Следующий вопрос >>] [Список вопросов]

Отвечает Dark_Lord

Здравствуйте, Andrei!
Для того, чтоб RichEdit посылала EN_CHANGE, нужно послать сообщение ENM_SETEVENTMASK с флагом ENM_CHANGE!

Ответ отправлен: 16.02.2004, 18:47
Отправитель: Dark_Lord



Форма отправки вопроса

Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

(C) 2002-2003 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (25)
C / C++ (15)
Perl (3)
Builder / Delphi (19)
Pascal (20)
Basic / VBA (8)
Java / JavaScript (3)
PHP (13)
Криптография (6)
WinAPI (12)
Радиоэлектроника (7)
Пользователю
Windows 95/98/Me (38)
Windows NT/2000/XP (52)
"Железо" (33)
Поиск информации (13)
Администратору
Windows NT/2000/XP (27)
Linux / Unix (9)
Юристу
Гражданское право (16)
Семейное право (11)
Трудовое право (12)
КоАП (10)

Отправить вопрос всем экспертам выбранной рассылки.




Задать вопрос | Регистрация эксперта | Поиск в базе | Чат | Форумы | Новости
Проект экспертов RusFAQ.ru | Фотоальбом | Virus.RusFAQ.ru | Администрирование
Профессиональная WEB-Студия B.I.T.


Яндекс цитирования
© 2001-2004 Россия, Москва. Авторское право: Калашников О.А.


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное