|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
|||||||||||
Изучение основ FreeBasic в сравнении с PowerBasic10.10.2022, 22:17. Показов 22104. Ответов 218
Метки freebasic;изучение основ (Все метки)
Всем добра и мира!
К сожалению, PowerBasic прекратил своё развитие вследствие смерти его создателя и главного (а скорее всего, единственного) разработчика Роберта Зейла в 2012-ом году. К настоящему времени последние надежды на его развитие окончательно угасли. В связи с этим я решил приступить к изучению основ FreeBasic'а. В этой ветке форума буду задавать вопросы, возникающие у меня в процессе ознакомления с этим ЯП. Как говорится, всё познаётся в сравнении. Ну вот и буду изучать FreeBasic, опираясь на определённый опыт ЛЮБИТЕЛЬСКОГО программирования на PowerBasic'е. Буду очень благодарен за любую помощь. Итак, первый возникший у меня вопрос. Каким образом в структурах FreeBasic'а появилась возможность использовать динамические строки? В PowerBasic'е это строго запрещено. Можно использовать только строки фиксированной длины. Вот 2 работающих (с одним и тем же результатом на консоли) кода для сравнения: FreeBasic
1
|
|||||||||||
| 10.10.2022, 22:17 | |
|
Ответы с готовыми решениями:
218
|
|
COM‐пропагандист
|
||||||||||||
| 17.11.2022, 10:09 | ||||||||||||
|
Но можете глянуть как будет выглядеть с заголовочником (удалил некоторую проверку ошибок, она вроде как не нужна):
Заголовочник "AddOne_client.bi": Кликните здесь для просмотра всего текста
1
|
||||||||||||
|
|
||
| 17.11.2022, 13:04 | ||
|
0
|
||
|
COM‐пропагандист
|
|
| 17.11.2022, 14:18 | |
|
0
|
|
|
Модератор
|
|||
| 17.11.2022, 14:28 | |||
|
0
|
|||
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
||
| 17.11.2022, 14:48 [ТС] | ||
![]() Хотя из порядка 15 попыток запуска у меня удачно сработала только одна, но это уже мои косяки. Четыре редактора, да кроме того ещё и по две версии каждого из них (х32 и х64). Итого 8 вариантов. Да плюс ещё и настройки в каждом из них различаются. Ну вот и перебирал их все последовательно. В большинстве попыток получал сообщение "Не могу создать объект". Но один раз всё-таки высветился желаемый результат, а именно "21". Ну то есть код всё-таки работает и это уже мои проблемы, что я пока ещё не справляюсь с этой четвёркой лошадей ![]() Самое интересное, что я теперь даже не могу вспомнить, в каком именно из этих редакторов и при каких именно настройках получил тот самый единственный правильный результат ![]() Ну ничего, со временем приноровлюсь как-нибудь. И ещё в вашем коде после каждого PRINT добавлял SLEEP 5000, чтобы консоль не исчезала мгновенно. А иначе бы и не увидел сообщение "Не могу создать объект".
0
|
||
|
|
||||
| 17.11.2022, 15:06 | ||||
|
То есть вы просто тратите свое время в пустоту потому что завтра api изменятся, а прослойки останутся такими же. Поэтому писать надо на "прослойках ", чуть не написал - прокладках.)))
0
|
||||
|
Модератор
|
||||
| 17.11.2022, 15:30 | ||||
|
0
|
||||
|
|
||
| 17.11.2022, 15:49 | ||
|
Я же тоже win api изучал. И книжку Петзольда читал причем в подлиннике на английском. И периодически обращаюсь. Да, действительно: на api можно многое, но на нем вы не сможет сделать того, что можно сделать на вот этих обертках. Потому что они не только абстрагируют, но дают новые возможности.
0
|
||
| 17.11.2022, 16:02 | |
|
0
|
|
|
COM‐пропагандист
|
||||
| 17.11.2022, 16:11 | ||||
|
Регистрируйте КОМ‐сервер от имени администратора в 32‐битной среде. Для этого нужно запустить 32‐битный интерпретатор команд (лежит примерно тут «C:\Windows\SysWow64\cmd.exe») (от имени администратора) и там ввести «regsvr32 путь-к-вашему-серверу.dll». Компилировать фрибейсиковый код 32‐битным компилятором. Добавлено через 2 минуты Сделайте на рабочем столе ярлык к компилятору и просто перетаскивайте мышью файл исходного кода на этот ярлык. Проще некуда.
2
|
||||
|
Модератор
|
||||
| 17.11.2022, 17:20 | ||||
|
1
|
||||
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
||||||||||||||
| 17.11.2022, 20:14 [ТС] | ||||||||||||||
![]() Ведь главный смысл-то всего этого "мероприятия" это именно поиск способа использования 32-битного СОМ-сервера в 64-битном СОМ-клиенте. А под х32 я и в самом PowerBasic'е могу СОМ-сервер смастерить.
0
|
||||||||||||||
|
Модератор
|
||
| 17.11.2022, 20:43 | ||
|
https://learn.microsoft.com/en... activation Можно просто написать ActiveX-EXE сервер, либо создать объект и передать моникер в приложение к примеру через командную строку.
1
|
||
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
||||
| 17.11.2022, 21:11 [ТС] | ||||
![]() Суррогатные процессы... я терминов-то таких не слыхивал ![]() А как тогда использовать преимущества 64-битности? ![]() Про "моникер" как раз сегодня прочитал, что это "прозвище" и ещё что существует интерфейс IMonicer. Но дальше пока не дочитал ![]() Да там даже во всей Справке вроде бы и не было про это в подробностях, насколько я помню. Просто вскользь упомянуто в самом начале.
0
|
||||
|
Модератор
|
|||
| 17.11.2022, 21:32 | |||
|
2
|
|||
|
46 / 25 / 0
Регистрация: 08.03.2016
Сообщений: 443
|
|||
| 18.11.2022, 14:44 [ТС] | |||
![]() Такие трудозатраты могут быть оправданы, только если станет возможным "упаковывать" в DLL-СОМ-сервер огромные куски кода. В идеале, целиком всю программу. И опять же если появится доступ к невидимой части памяти.
0
|
|||
|
COM‐пропагандист
|
||
| 18.11.2022, 17:34 | ||
|
Новые программы следует писать сразу с учётом 64‐бит. Помните, что чем дольше у вас не будет полноценного 64-битного варианта, тем больше сложностей будет возникать с поддержкой 32‐битного приложения, устанавливаемого на 64-битные версии Windows.
1
|
||
|
Модератор
|
||
| 19.11.2022, 13:00 | ||
|
0
|
||
| 19.11.2022, 13:00 | |
|
Лабораторная работа на изучение основ работы с debug.exe Лабораторная работа(Изучение основ.Одномерный и двумерный массивы.Процессы) Проблема с Imagelist в PowerBasic 10 FreeBASIC Уйти с freebasic Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Эксперимент с картинкой-обложкой на CodinGame
Adler 10.07.2026
Решил на днях провести эксперимент. У меня есть аккаунт на CodinGame, ТОП-3 по РФ среди 2200 участников (в разделе соревнования по программированию ИИ-ботов). Там есть обложка, куда можно влепить. . .
|
GitDOS: Когда я решил скрестить MS-DOS, GitHub и Claude
MaGz GoLd 08.07.2026
Привет, Киберфорум! Хочу поделиться своим проектом, который, надеюсь, вас заинтересует. GitDOS — это веб-приложение, которое позволяет запускать DOS в браузере с тремя крутыми фичами: диски живут в. . .
|
Учебный мини "цифровой двойник" = (Сервер = Java + Flask_питон )+(3D = Гугловскаая 4T nvideo + google colab) +( WMS = Odoo на Docker)
anaschu 07.07.2026
Увидел в требованиях к вакансии создателя имитационных моделей связку (REst + Api + WMS + Anylogic + питон + 3D Nvideo), и решил посмотреть, что это такое. Из этого всего я работал более менее. . .
|
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал.
Оно само - говорит.
Кто слышит тот слышит.
|
|
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было
ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась.
Первый вариант. . .
|
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2.
Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
|
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет.
Но обычно это 50 лет и более.
Наверное, закисление почвы происходит сезонно в средней. . .
|
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
|