Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 15.01.2010, 06:23   #11
Mikl___
Участник клуба
 
Регистрация: 11.01.2010
Сообщений: 1,152
По умолчанию

--=SaNitinDG=-
>Я смотрю там много макросов использоваться
Если с макросами не разберешься, то во вложении без всяких макросов
1) Программное создание диалога
2) Создание диалога через файл ресурсов
3) Создание диалога через заполнение структуры и DialogBoxIndirectParam
Вложения
Тип файла: rar dialogs.rar (10.4 Кб, 23 просмотров)
Mikl___ вне форума   Ответить с цитированием
Старый 15.01.2010, 21:29   #12
--=SaNitinDG=-
Пользователь
 
Регистрация: 14.01.2010
Сообщений: 61
По умолчанию

Что делает вот эти макросы?
m2m MACRO M1, M2
push M2
pop M1
ENDM

return MACRO arg
mov eax, arg
ret
ENDM

stralloc MACRO ln
invoke SysAllocStringByteLen,0,ln
ENDM

strfree MACRO strhandle
invoke SysFreeString,strhandle
ENDM

QUAD MACRO name,value
.data
name QWORD value
.code
ENDM

И где там найти указатель на msctls_progress32, для Progress bara?
--=SaNitinDG=- вне форума   Ответить с цитированием
Старый 16.01.2010, 04:20   #13
Goodwin98
equ asm
Участник клуба
 
Аватар для Goodwin98
 
Регистрация: 02.05.2009
Сообщений: 1,605
По умолчанию

Код:
m2m MACRO M1, M2
push M2
pop M1
ENDM
Пересылка из одной ячейки памяти в другую
Код:
return MACRO arg
mov eax, arg
ret
ENDM
Помещает в eax код выхода и выходит из подпрограммы.
Код:
stralloc MACRO ln
invoke SysAllocStringByteLen,0,ln
ENDM

strfree MACRO strhandle
invoke SysFreeString,strhandle
ENDM
Первый резервирует, а второй освобождает память у системы под какую-то строку.
Код:
QUAD MACRO name,value
.data
name QWORD value
.code
ENDM
Позволяет прямо в коде добавлять глобальные переменные переменные. Тоже самое, что записать значение сразу в секции с данными.
Цитата:
И где там найти указатель на msctls_progress32, для Progress bara?
В первом примере он, почему-то, в середине кода(aMsctls_progres). Во втором - в файле ресурсов, а в третьем - в начале (ProgressClass).
Какой вопрос - такой ответ. Не забываем пользоваться поиском, гуглом.
Помощь в выполнении работ по ассемблеру ICQ:2725322O4
Goodwin98 вне форума   Ответить с цитированием
Старый 16.01.2010, 13:25   #14
--=SaNitinDG=-
Пользователь
 
Регистрация: 14.01.2010
Сообщений: 61
По умолчанию

Goodwin98
Толкова быстро понятна всё расписано.

А где можно почитать про создание макросов в масам32 какую литературу можно почитать по этому поводу?

У меня так и не получилась сделать рабочий прогресс бар в диалоговом окне созданном при помощи DialogBoxParam. В диалоговом окне созданном при помощи RegisterClassEx,CreateWindowEx прогресс бар сразу прекрасно работает. Вопрос по прежнему актуален как его вывести и сделать рабочим в окне данного типа? Желательно пример для RadASM

Последний раз редактировалось --=SaNitinDG=-; 16.01.2010 в 13:37.
--=SaNitinDG=- вне форума   Ответить с цитированием
Старый 16.01.2010, 14:22   #15
Д'якон
Форумчанин
 
Регистрация: 05.12.2007
Сообщений: 236
По умолчанию ---

ProgressBar - это коммон контрол. Перед вызовом DialogBoxParam вызови функцию InitCommonControlsEx и подключи comctl32.lib comctl32.inc
Д'якон вне форума   Ответить с цитированием
Старый 16.01.2010, 14:43   #16
Goodwin98
equ asm
Участник клуба
 
Аватар для Goodwin98
 
Регистрация: 02.05.2009
Сообщений: 1,605
По умолчанию

Попробуй это
Вложения
Тип файла: rar progress.rar (2.4 Кб, 26 просмотров)
Какой вопрос - такой ответ. Не забываем пользоваться поиском, гуглом.
Помощь в выполнении работ по ассемблеру ICQ:2725322O4
Goodwin98 вне форума   Ответить с цитированием
Старый 16.01.2010, 19:52   #17
--=SaNitinDG=-
Пользователь
 
Регистрация: 14.01.2010
Сообщений: 61
По умолчанию

ProgressBar - это коммон контрол. Перед вызовом DialogBoxParam вызови функцию InitCommonControlsEx и подключи comctl32.lib comctl32.inc
Уж куда я эту функу тока не ставил, не срабатывал прогресс бар, у меня ни с ней не без неё. Три ночи убил на прогресс бар и наконец, Салют!!!

Ну, это капец , нишьтяк ,ништековский, всё ура заработал прогресс бар пёс смердящий(животное).

Goodwin98
Сразу видно руку профессионала, пару строчек кода и вуаля прагрес бар пашет, вод бы мне так тоже научиться шарить в Ассемблере .

А я кажется понял, где собака зарыта в API SendDlgItemMessage, без неё не как. Интересно как вы это узнали, что надо SendDlgItemMessage использовать вместо CreateWindowEx.
--=SaNitinDG=- вне форума   Ответить с цитированием
Старый 16.01.2010, 22:31   #18
Goodwin98
equ asm
Участник клуба
 
Аватар для Goodwin98
 
Регистрация: 02.05.2009
Сообщений: 1,605
По умолчанию

Это шаблон радасма DialogApp, на диалоге у которого добавили прогрессбар и кнопку.
Цитата:
А я кажется понял, где собака зарыта в API SendDlgItemMessage, без неё не как. Интересно как вы это узнали, что надо SendDlgItemMessage использовать вместо CreateWindowEx.
Вообще-то SendDlgItemMessage тут вместо GetDldItem + SendMessage.
Какой вопрос - такой ответ. Не забываем пользоваться поиском, гуглом.
Помощь в выполнении работ по ассемблеру ICQ:2725322O4
Goodwin98 вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
порты на Assemblere Dimon Assembler - Ассемблер 11 13.04.2010 17:36
Progress bar SKS Компоненты Delphi 10 15.08.2009 21:09
Progress Bar без рамки. Mitron Компоненты Delphi 5 21.01.2008 17:33
Progress Bar Alexander X Компоненты Delphi 2 17.12.2007 04:18


06:43.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.