Russian English
   Basic.net
Среда, 23.09.2020, 02:57
Меню сайта
Категории раздела
Basic [44]
Помощь [0]
Облако тегов
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Форма входа
Главная » Статьи » Basic

Библиотеки для QBasic
Share |

Библиотека – это набор функций и процедур (FUNCTION, SUB), хранящихся в откомпилированном виде. Подключив библиотеку, вы можете вызывать эти ф-ии из своей программы. Библиотеки для qb обычно состоят из 3-х файлов. Сама библиотека – это файл с расширением .qlb. Для того чтобы сделать .exe файл из программы, использующую этот .qlb нужен еще и .lib файл. Ещё может присутствовать и включаемый в проект инклуд файл, содержащий объявления функций/процедур и типы, массивы, константы и глобальные переменные, которые используют эти ф-ии (в принципе там может быть что угодно. У этих файлов расширение обычно – .bi, .dec или .inc. Такие файлы подключают метакомандой $INCLUDE.

Например, чтобы использовать CALL INTERRUPT надо подключить стандартную библиотеку qb.qlb (она  входит в поставку QBASIC 4.5). Делается это посредством запуска QBASIC’а с командной строки с ключом /L. Например так: qb.exe /L qb.qlb myfile.bas . Затем в начале файла пишем: REM $INCLUDE: ‘qb.bi’ (или ‘$INCLUDE:’qb.bi’). Перед метакомандой обязан стоять символ комментария! $INCLUDE просто «засовывает» в исходник содержимое указанного файла. $INCLUDE можно и не использовать и скопировать в исходник содержимое .bi файла самостоятельно.

Чтобы создать из исходника на QB библиотеку надо в меню выбрать Run->Make Library. После этого создадутся .qlb и .lib файлы. А .bi надо сделать самому.

Библиотеки можно делать не только из .bas файлов, но и из объектников (.obj) – Assembler’а или C. Делается это так:

1. Сначала создадим .lib включающий в себя стандартную QBASIC’овскую библиотеку, чтобы потом последнюю не приходилось каждый раз подгружать: LIB.EXE my_lib.LIB QB.LIB; (это делать не обязательно)
2. Запихнем в созданный .lib
(my_lib.lib) нужный .obj
LIB.EXE my_lib.LIB +my_obj.OBJ;
(так можно делать сколь угодно раз, добавляя все нужные .obj’и)
3. И сделаем .qlb из полученного .lib’а:
LINK.EXE /q my_lib.LIB,my_lib.QLB,,BQLB45.LIB
(.qlb можно сразу и из .obj’а
сделать –
LINK.EXE /qu my_obj.obj,
my_lib.qlb,,BQLB45.LIB)

Естественно, все файлы используемые в этих строках должны лежать в одной директории или доступны по PATH; в противном случае надо указывать полные пути.

Объявляется потом ф-ия так: DECLARE FUNCTION FuncName [CDECL]
[ALIAS "RealName"] (BYVAL|SEG param1, BYVAL | SEG param2,…)

CDECL надо писать, если .obj создавали на C/C++. Тогда QB передаст параметры ф-ии в обратном порядке. ALIAS пишем, если на языке, в котором писался этот .obj ф-ия называлась не так, как мы ее хотим назвать в нашей qb программе. Тогда после ALIAS в кавычках и напишем ее старое название. Выбираем BYVAL, если параметры надо передавать по значению, SEG – если по ссылке.

Пример:


DECLARE FUNCTION Stepen& ALIAS «Power» (BYVAL osnovanie%, BYVAL pokazatel%)


Библиотеки для QBasic

Название Автор Описание Размер
Future Library 3.50 Jorden Chamid & Michael Rye Sorensen Одна из лучших QB-библиотек. SVGA (c мышью);EMS/XMS; WAVE; BMP/PCX/GIF Animated;… 550K
DirectQB 1.61 Angelo Mottola Великолепная библиотека для написания игрушек с исходниками на ассемблере. 350K
Blast! Andrew L. Ayers Отличная библиотека для работы с графикой в SCREEN 13 66K
CosmoX 2.0 bobby Еще одна мощная библиотека для программистов игр с исходниками на асме 180K
BWSB 1.20 Edward Schlunder Проигрывание S3M/MOD/669/ULT/MED/FAR/STM на различных картах 1.3M
Long File Lib John Rude Работа с файлами/каталогами с длинными именами. 11K
MSTimer Brent Ashley Возможность работы с таймером до микросекунд + исходники на асме 22K
XMS Libs Robin Duffy/Michael Poindexter/Gabriel Fernandez/Exposed Dreams Четыре библиотеки для работы с XMS, две из них исходниками на асме 44K
Audio CD Toolkit unknown Библиотека для работы со звуковыми CD 17K
AABas 2.1 Charon Soft Множество полезных фунций для работы с клавиатурой, джойстиком, мышью, файлами, XMS, … 30K
AdvBas Steven Crocker Библиотека для работы со стеками и очередями(queue) 13K
B4G Andre Victor T. Vicentini Библиотека, позволяющая работать в защищенном режиме 190K
Comm Lib Scott Slater Библиотекадля работы с модемом 65K
QBSock Dmitry Brant Библиотека для работы с TCP/IP при запущенном VB.exe и исходник Telnet клиента 13K
QB-MMX 0.7 zChip Поддержка инструкций MMX 13K
MultiLib 2.10d24 Keven Coots Позволяет делать библиотеки, используя нужные ф-ии из других библиотек 115K


Категория: Basic | Добавил: Admin (11.12.2011)
Просмотров: 4859 | Комментарии: 1 | Теги: QBasic, библиотеки qbasic | Рейтинг: 5.0/1
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Поиск
Наш опрос
Какую версию Basic вы предпочитаете?
Всего ответов: 2028

© Basic.ucoz.net, 2020