OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Вторник, 10 Декабрь, 2024 03:03

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




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
СообщениеДобавлено: Понедельник, 30 Сентябрь, 2024 05:50 

Зарегистрирован: Воскресенье, 06 Август, 2017 19:33
Сообщения: 95
Доброго времени суток. Подскажите, как обращаться к функциям WinApi, отсутствующим в одноимённом модуле?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 30 Сентябрь, 2024 06:24 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 02:12
Сообщения: 485
Откуда: KZ
Создать отдельный модуль с определениями недостающих функций или добавить их в существующий (и внести вклад в другие проекты).


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 30 Сентябрь, 2024 07:39 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1540
всегда, кстати, бесило, что импорт нельзя делать по месту. и что в модули импорта so/dll оберон код-то добавить можно через хак, но бессмысленно. одна из тех мелочей, которые совсем не смертельны, но очень раздражают.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 30 Сентябрь, 2024 12:49 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 3806
Александр К писал(а):
Доброго времени суток. Подскажите, как обращаться к функциям WinApi, отсутствующим в одноимённом модуле?

Да, смело делаете свой модуль WinApiExt с всеми недостающими вам функциями и используете.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вторник, 01 Октябрь, 2024 04:54 

Зарегистрирован: Воскресенье, 06 Август, 2017 19:33
Сообщения: 95
Иван Денисов писал(а):
Да, смело делаете свой модуль WinApiExt с всеми недостающими вам функциями и используете.

Я никогда раньше такого не делал. Подскажите, где об этом можно почитать? Дайте ссылки или хотя-бы как это называется, чтобы самому найти.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Вторник, 01 Октябрь, 2024 05:03 

Зарегистрирован: Воскресенье, 25 Декабрь, 2022 23:14
Сообщения: 1540
собственно, открываем тот же винапи — и там всё видим.
Код:
MODULE HostWinApi ["KERNEL32.dll"];

IMPORT SYSTEM;



PROCEDURE QueryDosDevice* ["QueryDosDeviceA"] (lpDeviceName: PtrSTR; lpTargetPath: PtrSTR; ucchMax: INTEGER): INTEGER;

END HostWinApi.

всё довольно прозрачно: константы, типы — как обычно (разве что записи должны быть `[untagged]`). в кавычках — имя из dll. ничего сложного, почти что механическая трансляция из си.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

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


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

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


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

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