Функции Includes (включение в код)
IncludeFile | XIncludeFile |
IncludeBinary | IncludePath |
IncludeFile "Filename"
Описание
IncludeFile вставляет указанный файл с исходным кодом PureBasic, в то место где записана эта функция, даже если для этого файла ранее уже использовали функцию XIncludeFile.
Пример
IncludeFile "Sources\myfile.pb" ; Этот файл будет вставлен в текущий месте кода.
Эта команда полезна, если Вы хотите разделить свой исходный код на несколько файлов, чтобы иметь возможность повторного использования частей в различных проектах.
XIncludeFile "Filename"
Описание
XIncludeFile подобна IncludeFile, но не позволяет включать один и тот же файл дважды.
Пример
XIncludeFile "Sources\myfile.pb" ; Этот файл будет вставлен. XIncludeFile "Sources\myfile.pb" ; Этот файл будет проигнорирован наряду со всеми последующими вызовами.
Эта команда полезна, если Вы хотите разделить свой исходный код на несколько файлов, чтобы иметь возможность повторного использования частей в различных проектах.
IncludeBinary "filename"
Описание
IncludeBinary вставляет указанный файл (не исходный код PureBasic), в то место где записана эта функция. При этом вставка должна происходить в пределах блока Data. Эта команда может использоваться с командами /CatchImage(), /CatchSound(), /CatchSprite() для вставки изображений, звуков, спрайтов и т.д., в исполняемый файл.
Пример
DataSection MapLabel: IncludeBinary "Data\map.data" EndDataSection
IncludePath "path"
Описание
IncludePath Устанавливает заданный по умолчанию путь для всех файлов, включаемых в код после вызова этой команды. Это очень удобно для включения множества файлов из одного каталога. Команда IncludePath "" (с пустыми кавычками) сбрасывает ранее заданный путь, им снова становится путь к папке с приложением.
Пример
IncludePath "Sources\Data" IncludeFile "Sprite.pb" XIncludeFile "Music.pb" IncludeFile "" ; сбрасывает ранее заданный путь по умолчанию.
Примечания (для Windows)
Путь к файлу — это последовательность из имён каталогов или символов "..", разделённых символами "\" (обратный слэш), задающий маршрут от текущего или корневого каталога к тому, в котором находится нужный файл. Путь к файлу от корневого каталога называют абсолютным (или полным) путём, а от текущего — относительным путём.
Путь, начинающийся с "\", воспринимается системой как путь от корневого каталога текущего диска. Каждое имя каталога, указанное в пути, соответствует входу в каталог с этим именем. Символ ".." перед "\" обозначает переход в родительский каталог, то есть на уровень выше текущего каталога. Последовательность из символов "..\..\" отправляет на 2 уровня выше текущего каталога, и так далее.
Для изменения текущего каталога программы можно использоваться функции GetCurrentDirectory() и SetCurrentDirectory().
В API-интерфейсе Windows для системы NTFS, есть максимальная длина пути в MAX_PATH, которая определяется как 260 символов.
Примеры:
Предположим, что текущий каталог "c:\sys\prog\work\"
Тогда путь:
"c:\test.txt" – будет указывать на файл с полным именем "c:\test.txt"
"\test.txt" – будет указывать на файл с полным именем "c:\test.txt"
"c:test.txt" – будет указывать на файл с полным именем "c:\sys\prog\work\test.txt"
"tempdir\test.txt" - будет указывать на файл с полным именем "c:\sys\prog\work\tempdir\test.txt"
"c:tempdir\test.txt" - будет указывать на файл с полным именем "c:\sys\prog\work\tempdir\test.txt"
"c:\tempdir\test.txt" - будет указывать на файл с полным именем "c:\tempdir\test.txt"
"c:..\test.txt" - будет указывать на файл с полным именем "c:\sys\prog\ test.txt"
"c:..\..\test.txt" - будет указывать на файл с полным именем "c:\sys\test.txt"
Если в тех же условиях в Purebasic ссылаться на не текущий диск, то относительные пути работают не так как должны в Windows:
"d:\test.txt" - будет указывать на файл с полным именем "d:\test.txt"
"d:test.txt" – будет указывать на файл с полным именем "d:\test.txt"
"d:..\test.txt" - будет указывать на файл с полным именем "d:\test.txt"
"d:tempdir\test.txt" - будет указывать на файл с полным именем: "d:\tempdir\test.txt"
"d:\tempdir\test.txt" - будет указывать на файл с полным именем: "d:\tempdir\test.txt"