Вопросы по KOS

Applications development, KoOS API questions
  • 1) для подключения библиотек есть 2 варианта:
    - использовать функцию dll.Load из файла dll.inc -
    http://websvn.kolibrios.org/filedetails ... %2Fdll.inc
    - использовать макросы из файла load_lib.mac -
    http://websvn.kolibrios.org/filedetails ... ad_lib.mac
    Информацию для программирования можно найти здесь http://wiki.kolibrios.org/wiki/For_developers/ru , но статей там мало. Много может не быть.
    Макрос load_lib.mac дает некоторые преимущества по сравнению с функциями dll.Load, например если библиотека не найдена или функции в библиотеке не совпадают с экспортированными то макрос выдаст сообщение пользователю программы. Использование dll.Load по идее должно быть легче для программиста, но зато при возникновении проблем с библиотекой пользователь не поймет в чем дело и почему программа не запустилась. Есть программы которые используют и тот и другой способы. Сами макросы из load_lib.mac в некоторых случаях используют функции из dll.inc . По использованию макросов load_lib.mac для подключения библиотек можно посмотреть информацию тут http://websvn.kolibrios.org/filedetails ... readme.txt
    2) это указатель на системный путь, т. е. на папку откуда была запущена программа. Если там 0 то программа не будет знать откуда она загрузилась. Используется если в папке с программой есть какие либо файлы, которые требуется открыть обычно без участия пользователя.
    3) это я не знаю, но думаю что нет
    4) точно не скажу но или 4096 или 1024 байт, потому как во многих программах именно эти цифры. Вроди как 4096 это заготовки на будущее и используется только 1024.
    5) не знаю таких списков
  • Asiaron wrote:5) Есть ли какой-нибудь список задач на пару сотен строк, на которые "старичкам" нет времени, и можно потренироваться?
    Списки есть, но не все задачи там "по зубам" даже "старичкам". Всё зависит от того, какие у тебя навыки программирования. Из более-менее лёгких задач:
    1. Программа поиска файлов по всем дискам (SEARCH), как в WindowsXP.
    2. Таймер / будильник (у нас есть программа, называющаяся Timer, но на самом деле это секундомер)
    Если хочется сразу поломать зубы, то есть задачи и покруче, например драйвер сетевых карт Broadcom / Atheros.
  • Уточню насчет:
    2) Это не указатель директории, а полный путь откуда запущен исполняемый файл, включая полное название самого файла. ЕМНИП размер, который копирует ядро - до 1024 байт.
    3) Не достаточно подробно заданный вопрос. На данную формулировку ответ скорее отрицательный.
    4) По умолчанию ядро копирует только 256 байт. Есть возможность увеличить размер - обсуждение реализации здесь "Длина командной строки и пути к файлу при запуске".
    5) Проект свободный и если программист не работает в рамках KSoC или GSoC (где студентам выдаются деньги за выполнение поставленных заданий на протяжение лета), то каждый сам определяет для себя круг задач. Разумеется если заинтересовавшая тема уже кем то разрабатывается, то кооперация приветствуется, но никто не запрещает в одиночку работать параллельно. Главное, чтобы не мешались друг друг, так что координация важна.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Asiaron wrote:5) Есть ли какой-нибудь список задач на пару сотен строк, на которые "старичкам" нет времени, и можно потренироваться?
    Есть такая программа -- magnify, экранная лупа. Полезна, например, при работе над мелкими элементами интерфейса. Есть предложения по её усовершенствованию (от простого к сложному):
    1. инвертирование (белый/чёрный) цвета решётки по нажатию Tab;
    2. увеличение/уменьшение масштаба по нажатию +/- (скажем, в пределах 2,4,8,16,32,64);
    3. изменяемые мышью размеры окна (сейчас фиксированы);
    4. режим слежения за определённым участком экрана, а не за курсором;
    5. подсчёт расстояния в пекселях для последовательности левых кликов в окне программы (сброс по правому клику).
    Программа в дистрибутиве лежит в корне диска; исходники в репозитории в /programs/demos/magnify.
    Мелкие вопросы "да/нет" пиши в чат или irc; если нужно что-то объяснить, то на форум.
  • Who is online

    Users browsing this forum: No registered users and 21 guests