- Содержание статьи
В отличии от большинства языков программирования, где присутствует директива/функция include (C, C++, PHP), VBScript лишен такой замечательной возможности включения кода из другого файла. Для реализации подобного функционала в VBScript придется воспользоваться либо возможностями объединения различных файлов через Windows Script File (WSF), либо самописной процедурой, работа которой будет аналогична Include.
Способ 1
Создадим два файла — vbs1.vbs и vbs2.vbs. В первом файле, vbs1.vbs зададим значение переменной:
strTest = "Hello world!"
Во втором файле — vbs2.vbs, выведем на экран значение переменной strTest:
MsgBox strTest
Понятное дело, по отдельности каждый из этих файлов бесполезен, по этому воспользуемся возможностями файла wsf (буквально Windows Script File), который позволяет задать поочередное выполнение файлов.
<job id="Test"> <script language="VBScript" src="vbs1.vbs"/> <script language="VBScript" src="vbs2.vbs"/> </job>
Таким образом, при запуске файла wsf, сперва будет выполнен первый файл, а потом второй — и при этом, второй файл корректно получит данные из первого файла.
Способ 2
Так же, можно использовать самописную процедуру для VBScript, которая позволит выполнять данные из указанного файла, как будто они находятся в текущем файле скрипта.
Создадим так же файл vbs1.vbs, в котором зададим значение переменной:
strTest = "Hello world!"
Создадим файл vbs2.vbs, и внесем туда процедуру для чтения и выполнения содержимого из другого vbs файла:
Sub Include (filename) Dim FileSystemObject, objFile Set FileSystemObject = createObject ("Scripting.FileSystemObject") Set objFile = FileSystemObject.openTextFile (filename) ExecuteGlobal objFile.readAll objFile.close Set objFile = nothing Set FileSystemObject = nothing End Sub Include "vbs1.vbs" MsgBox strTest
Таким образом, запустив второй файл, будет выполнена процедура по считыванию данных из первого файла.

Добавить комментарий