Читаем Язык программирования Euphoria. Справочное руководство полностью

ShowWindow = define_c_proc(user32, "ShowWindow", {C_INT, C_INT})

-- Если бы ShowWindow работала по правилам cdecl,

-- мы записали бы здесь "+ShowWindow"

if ShowWindow = -1 then

puts(1, "ShowWindow не найдена!\n")

end if

См. также:

c_proc, define_c_func, c_func, open_dll, platform_r.htm

define_c_var

Платформа:

WIN32, Linux, FreeBSD

Синтаксис:

include dll.e

a1 = define_c_var(a2, s)

Описание:

Выдаёт адрес переменной Си, загруженной в память. Аргумент a2 является адресом общей библиотеки .so Linux, FreeBSD или .dll Windows, выданным функцией open_dll(). Ряд s задает имя глобальной переменной Си, определенной внутри системной библиотеки. В переменной a1 будет содержаться значение адреса переменной s в памяти.

Комментарии:

Как только вы получили адрес переменной Си, и если вы знаете её тип, вы можете далее использовать подпрограммы peek() и poke(), чтобы считывать или записывать в памяти величину этой переменной.

Пример программы:

euphoria/demo/linux/mylib.exu

См. также:

c_proc, define_c_func, c_func, open_dll, platform_r.htm

dir

Синтаксис:

include file.e

x = dir(st)

Описание:

Выдаёт информацию о каталоге или о файле с именем st. Если такой каталог или файл не существует, выдаёт -1. Под Windows и DOS st может содержать символы догадок * и ?, что позволяет получать данные о нескольких файлах с похожими именами.

Выдаваемая информация похожа на ту, которую вы получаете по команде DIR под DOS. Ряд, формируемый функцией, содержит вложенные ряды (записи), каждый из которых описывает один файл или подкаталог.

Если в st задано имя каталога (директории, папки, фолдера), вы можете получить записи для "." и "..", точно так же, как и по команде DIR под DOS. Если же в st задано имя файла, тогда x будет иметь только одну запись, т.е. length(x) будет равна 1. Если в st содержатся символы догадок (шаблоны), вы можете получить многочисленные записи.

Каждая запись содержит имя, атрибуты файла и его размер, а также год, месяц, день, час, минуту и секунду последнего изменения. Вы можете обращаться к элементам записи с помощью следующих констант, определенных в библиотеке file.e:

global constant D_NAME = 1, -- имя

D_ATTRIBUTES = 2, -- атрибуты

D_SIZE = 3, -- размер

D_YEAR = 4, -- год

D_MONTH = 5, -- месяц

D_DAY = 6, -- день

D_HOUR = 7, -- час

D_MINUTE = 8, -- минута

D_SECOND = 9 -- секунда

Элемент атрибутов является строковым рядом, содержащим символы, выбранные из следующего перечня:

'd' -- каталог

'r' -- файл только для чтения

'h' -- скрытый файл

's' -- системный файл

'v' -- метка тома

'a' -- файл, подлежащий архивированию

Для обычного файла, без специальных атрибутов, в этом поле будет выдана пустая строка, "".

Комментарии:

Каталог высшего уровня, корневой, т.е. c:\, не содержит записей "." или "..".

Данная функция часто используется просто для проверки, существует ли заданный файл или каталог.

На платформе WIN32 в st могут содержаться длинные имена файлов или каталогов в любом месте полного пути.

На платформах Linux/FreeBSD в настоящее время доступен только атрибут 'd'.

DOS32: Имя файла, выдаваемое в элементе D_NAME, будет стандартным DOS-именем формата 8.3 (посетите Web-страницу Архива файлов, если вас интересует лучшее решение).

WIN32: Имя файла, выдаваемое в элементе D_NAME, будет длинным именем.

Пример:

d = dir(current_dir())

-- ряд d мог бы быть, например, равным:

{

{".", "d", 0 1994, 1, 18, 9, 30, 02},

{"..", "d", 0 1994, 1, 18, 9, 20, 14},

{"fred", "ra", 2350, 1994, 1, 22, 17, 22, 40},

{"sub", "d", 0, 1993, 9, 20, 8, 50, 12}

}

-- тогда d[3][D_NAME] было бы "fred"

Пример программы:

bin\search.ex

См. также:

wildcard_file, current_dir, open

display_image

Платформа:

DOS32

Синтаксис:

include image.e

display_image(s1, s2)

Описание:

Выводит в точке s1 на пиксельном экране 2-мерный ряд пикселов, описание которых содержится в s2. Аргумент s1 - двухэлементный ряд вида {x, y}. Аргумент s2 содержит ряды, каждый из которых представляет горизонтальную строчку значений цветов пикселов, которые необходимо включить на экране. Первый пиксел первого ряда расположен в точке s1. Это верхний левый пиксел. Все остальные пикселы расположены правее или ниже этого первого.

Комментарии:

Перейти на страницу:

Все книги серии Euphoria

Язык программирования Euphoria. Справочное руководство
Язык программирования Euphoria. Справочное руководство

Euphoria (юфо'ри, также рус. эйфори'я, ра'дость) — язык программирования, созданный Робертом Крейгом (Rapid Deployment Software) в Канаде, Торонто. Название Euphoria — это акроним для «End-User Programming with Hierarchical Objects for Robust Interpreted Applications».Euphoria — интерпретируемый императивный язык высокого уровня общего назначения. C помощью транслятора из исходного кода на Euphoria может быть сгенерирован исходный код на языке Си, который в свою очередь может быть скомпилирован в исполнияемый файл или динамическую библиотеку при помощи таких компиляторов, как GCC, OpenWatcom и др. Программа Euphoria также может быть «связана» с интерпретатором для получения самостоятельного исполняемого файла. Поддерживается несколько GUI-библиотек, включая Win32lib и оберток для wxWidgets, GTK+ и IUP. Euphoria имеет встроенную простую систему баз данных и обертки для работы с другими типам баз данных.[Материал из Википедии]

Коллектив авторов

Программирование, программы, базы данных

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных