OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Пятница, 29 Март, 2024 00:32

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 74 ]  На страницу Пред.  1, 2, 3, 4  След.
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Вторник, 26 Июнь, 2007 10:58 

Зарегистрирован: Понедельник, 29 Январь, 2007 19:00
Сообщения: 370
Откуда: Украина, Запорожье
Ярослав Романченко писал(а):
А скрыть главное окно BB можно? Что-бы было видно только одно моё окно. т.е. реализовать SDI приложение а не MDI...

Запуск BB с ключом /NOAPPWIN в командной строке.
Программно можно скрыть главное окно
Код:
res := WinApi.ShowWindow(WinApi.FindWindow("Oberon App", NIL), WinApi.SW_HIDE);

А вот нормальное SDI приложение со своим меню создать не получится, только диалоговые окна :(


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вторник, 26 Июнь, 2007 11:13 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2449
Откуда: Россия, Томск
PGR писал(а):
Запуск BB с ключом /NOAPPWIN в командной строке.
Программно можно скрыть главное окно
Код:
res := WinApi.ShowWindow(WinApi.FindWindow("Oberon App", NIL), WinApi.SW_HIDE);

FindWindow? Есть же HostWindows.main-: WinApi.HANDLE;


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вторник, 26 Июнь, 2007 20:43 

Зарегистрирован: Суббота, 12 Май, 2007 08:41
Сообщения: 102
Откуда: Беларусь, Минск
Илья Ермаков писал(а):
Kernel - это то, что называют рантаймом, или "поддержкой времени выполнения" для языка программирования...

Спасибо, вполне исчерпывающий ответ. Кажется, дело за практикой :)
Александр Ильин писал(а):
Тогда, возможно, вы также захотите услышать, что без использования Kernel на чистом WinApi exe-шник будет от 3.5Кб. : )

Ого! Приятно удивлён =) Также спасибо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вторник, 26 Июнь, 2007 22:33 

Зарегистрирован: Понедельник, 29 Январь, 2007 19:00
Сообщения: 370
Откуда: Украина, Запорожье
kreol писал(а):
Александр Ильин писал(а):
Тогда, возможно, вы также захотите услышать, что без использования Kernel на чистом WinApi exe-шник будет от 3.5Кб. : )

Ого! Приятно удивлён =) Также спасибо.

Пример GUI-приложения на чистом WinApi есть в документации на DevLinker.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вторник, 26 Июнь, 2007 22:50 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
В принципе, если приспичит (не знаю - зачем) откзаться от Kernel, то можно использовать [untagged]-записи (см. раздел документации "Платформенно-зависимые особенности") и WInApi.HeapAlloc/HeapFree.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вторник, 26 Июнь, 2007 23:36 

Зарегистрирован: Понедельник, 29 Январь, 2007 19:00
Сообщения: 370
Откуда: Украина, Запорожье
Мне кажется, что для таких задач вообще лучше использовать XDS Modula-2/Oberon-2...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вторник, 26 Июнь, 2007 23:39 
Аватара пользователя

Зарегистрирован: Пятница, 11 Май, 2007 21:57
Сообщения: 1488
Откуда: Украина, Киев
PGR писал(а):
А вот нормальное SDI приложение со своим меню создать не получится, только диалоговые окна :(

Спасибо!
Для начала может и диалогов хватит... :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 27 Июнь, 2007 02:02 

Зарегистрирован: Суббота, 12 Май, 2007 08:41
Сообщения: 102
Откуда: Беларусь, Минск
PGR писал(а):
Пример GUI-приложения на чистом WinApi есть в документации на DevLinker.

Да, я видел, но пока ещё не дорос до такого WinApi :roll:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 27 Июнь, 2007 10:23 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2449
Откуда: Россия, Томск
PGR писал(а):
Мне кажется, что для таких задач вообще лучше использовать XDS Modula-2/Oberon-2...

Там exe-шник от 40Кб.


Последний раз редактировалось Александр Ильин Среда, 27 Июнь, 2007 10:34, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 27 Июнь, 2007 10:28 

Зарегистрирован: Понедельник, 29 Январь, 2007 19:00
Сообщения: 370
Откуда: Украина, Запорожье
Александр Ильин писал(а):
PGR писал(а):
Мне кажется, что для таких задач вообще лучше использовать XDS Modula-2/Oberon-2...

Там exe-шник от 19Кб.

С таким подходом -- только ассемблер :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 27 Июнь, 2007 10:31 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4625
Откуда: Россия, Орёл
PGR писал(а):
С таким подходом -- только ассемблер :)
Ага, в виде кодовых процедур на BB. :D


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 27 Июнь, 2007 10:35 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2449
Откуда: Россия, Томск
Я ошибся: в XDS от 40Кб exe-шник (39 936). Наверное потому, что линковка ядра не отключается.

ЗЫЖ Блин, у всех уже фотки в аватарах. Вот подстригусь - тогда тоже сфотаюсь...


Последний раз редактировалось Александр Ильин Среда, 27 Июнь, 2007 10:39, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 27 Июнь, 2007 10:38 

Зарегистрирован: Понедельник, 29 Январь, 2007 19:00
Сообщения: 370
Откуда: Украина, Запорожье
Евгений Темиргалеев писал(а):
PGR писал(а):
С таким подходом -- только ассемблер :)
Ага, в виде кодовых процедур на BB. :D

Ещё один пункт в список улучшений компилятора -- встроить нормальный ассемблер, как в ETH Oberon. :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 27 Июнь, 2007 11:56 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
PGR писал(а):
нормальный ассемблер

А нормальный, это x86 что ли? :D


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 27 Июнь, 2007 12:01 
Модератор
Аватара пользователя

Зарегистрирован: Среда, 16 Ноябрь, 2005 00:53
Сообщения: 4625
Откуда: Россия, Орёл
Сергей Губанов писал(а):
PGR писал(а):
нормальный ассемблер

А нормальный, это x86 что ли? :D
А какой синтаксис, Intel или AT&T (мне последний нравится больше - более строгий)? :) По поводу встроенного ассемблера - я придерживаюсь мнения - оставить как есть. В виде кодовых процедур как в Math. А то встрой ассемблер и все начнут на нем писать :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 27 Июнь, 2007 19:38 

Зарегистрирован: Понедельник, 29 Январь, 2007 19:00
Сообщения: 370
Откуда: Украина, Запорожье
Сергей Губанов писал(а):
PGR писал(а):
нормальный ассемблер

А нормальный, это x86 что ли? :D

А что, BlackBox уже на других архитектурах работает? :wink:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 27 Июнь, 2007 19:39 

Зарегистрирован: Понедельник, 29 Январь, 2007 19:00
Сообщения: 370
Откуда: Украина, Запорожье
Евгений Темиргалеев писал(а):
По поводу встроенного ассемблера - я придерживаюсь мнения - оставить как есть. В виде кодовых процедур как в Math. А то встрой ассемблер и все начнут на нем писать :)

Ну, в Delphi вот есть встроенный ассемблер и что, многие на нем пишут?
А если что-то и надо написать, неужели в машинных кодах удобнее?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Четверг, 28 Июнь, 2007 01:04 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 10:37
Сообщения: 875
Откуда: Россия, Владивосток
PGR писал(а):
А если что-то и надо написать, неужели в машинных кодах удобнее?

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Четверг, 28 Июнь, 2007 01:57 

Зарегистрирован: Суббота, 12 Май, 2007 08:41
Сообщения: 102
Откуда: Беларусь, Минск
Ivor писал(а):
PGR писал(а):
А если что-то и надо написать, неужели в машинных кодах удобнее?

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

А IL-ассемблерные? =)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Четверг, 28 Июнь, 2007 02:15 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 10:37
Сообщения: 875
Откуда: Россия, Владивосток
kreol писал(а):
А IL-ассемблерные? =)

А есть разница?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 74 ]  На страницу Пред.  1, 2, 3, 4  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


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

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB