OberonCore https://forum.oberoncore.ru/ |
|
Как обращаться к Api функциям, отсутствующим в мод.WinApi? https://forum.oberoncore.ru/viewtopic.php?f=23&t=6992 |
Страница 1 из 1 |
Автор: | Александр К [ Понедельник, 30 Сентябрь, 2024 05:50 ] |
Заголовок сообщения: | Как обращаться к Api функциям, отсутствующим в мод.WinApi? |
Доброго времени суток. Подскажите, как обращаться к функциям WinApi, отсутствующим в одноимённом модуле? |
Автор: | Alexander Shiryaev [ Понедельник, 30 Сентябрь, 2024 06:24 ] |
Заголовок сообщения: | Re: Как обращаться к Api функциям, отсутствующим в мод.WinAp |
Создать отдельный модуль с определениями недостающих функций или добавить их в существующий (и внести вклад в другие проекты). |
Автор: | arisu [ Понедельник, 30 Сентябрь, 2024 07:39 ] |
Заголовок сообщения: | Re: Как обращаться к Api функциям, отсутствующим в мод.WinAp |
всегда, кстати, бесило, что импорт нельзя делать по месту. и что в модули импорта so/dll оберон код-то добавить можно через хак, но бессмысленно. одна из тех мелочей, которые совсем не смертельны, но очень раздражают. |
Автор: | Иван Денисов [ Понедельник, 30 Сентябрь, 2024 12:49 ] |
Заголовок сообщения: | Re: Как обращаться к Api функциям, отсутствующим в мод.WinAp |
Александр К писал(а): Доброго времени суток. Подскажите, как обращаться к функциям WinApi, отсутствующим в одноимённом модуле? Да, смело делаете свой модуль WinApiExt с всеми недостающими вам функциями и используете. |
Автор: | Александр К [ Вторник, 01 Октябрь, 2024 04:54 ] |
Заголовок сообщения: | Re: Как обращаться к Api функциям, отсутствующим в мод.WinAp |
Иван Денисов писал(а): Да, смело делаете свой модуль WinApiExt с всеми недостающими вам функциями и используете. Я никогда раньше такого не делал. Подскажите, где об этом можно почитать? Дайте ссылки или хотя-бы как это называется, чтобы самому найти. |
Автор: | arisu [ Вторник, 01 Октябрь, 2024 05:03 ] |
Заголовок сообщения: | Re: Как обращаться к Api функциям, отсутствующим в мод.WinAp |
собственно, открываем тот же винапи — и там всё видим. Код: MODULE HostWinApi ["KERNEL32.dll"]; IMPORT SYSTEM; … PROCEDURE QueryDosDevice* ["QueryDosDeviceA"] (lpDeviceName: PtrSTR; lpTargetPath: PtrSTR; ucchMax: INTEGER): INTEGER; END HostWinApi. всё довольно прозрачно: константы, типы — как обычно (разве что записи должны быть `[untagged]`). в кавычках — имя из dll. ничего сложного, почти что механическая трансляция из си. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |