1

Тема: VBS : Импорт процедур из внешнего скрипта

Добрый день.

Допускаю, что бред, однако спрошу, т.к. не нашёл ни да ни нет в интернете.

В HTA есть возможность написать

<script language="VBScript" src="Script.vbs"></script>

и после этого функции из скрипта Script.vbs будут доступны в HTA.

Есть ли подобная конструкция для vbs?

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

Спасибо.

"Единство,- возвестил оракул наших дней: -
Быть может спаяно железом лишь и кровью"…
Но мы попробуем спаять его любовью,-
А там увидим, что прочней…    (Ф. Тютчев)       Тут хорошая справка по vbs.

2 (изменено: Rumata, 2015-08-07 12:48:45)

Re: VBS : Импорт процедур из внешнего скрипта

Для этого есть WSH


<?xml version="1.0" ?>
<package>
<job id="main">
<script language="javascript" src="script.js"></script>
<script language="vbscript" src="script.vbs"></script>
</job>
</package>
( 2 * b ) || ! ( 2 * b )

3

Re: VBS : Импорт процедур из внешнего скрипта

WSH в данном случае это "Script.wsh" или объект в "Script.vbs"?

"Единство,- возвестил оракул наших дней: -
Быть может спаяно железом лишь и кровью"…
Но мы попробуем спаять его любовью,-
А там увидим, что прочней…    (Ф. Тютчев)       Тут хорошая справка по vbs.

4

Re: VBS : Импорт процедур из внешнего скрипта

MikeSh, я так и не понял, что нужно. Брать код из другого vbs? То бишь?:

Execute CreateObject("Scripting.FileSystemObject").OpenTextFile("AnyFile.vbs").ReadAll

5

Re: VBS : Импорт процедур из внешнего скрипта

Это не красиво с моей точки зрения, я думал над этим вариантом.
Хочется что-то по элегантнее, как в приведённом примере.
Читаю сейчас про .wsh. Пока что вопросов больше, чем ответов.

"Единство,- возвестил оракул наших дней: -
Быть может спаяно железом лишь и кровью"…
Но мы попробуем спаять его любовью,-
А там увидим, что прочней…    (Ф. Тютчев)       Тут хорошая справка по vbs.

6

Re: VBS : Импорт процедур из внешнего скрипта

MikeSh пишет:

WSH в данном случае это "Script.wsh" или объект в "Script.vbs"?

Похоже, Rumata описался. Речь про WSF.

7

Re: VBS : Импорт процедур из внешнего скрипта

Script.wsf


<?xml version="1.0" ?>
<package>
<job id="main">
<script language="vbscript" src="script1.vbs"></script>
<script language="vbscript" src="script2.vbs"></script>
</job>
</package>

Script1.vbs


Sub a(d)

  msgbox d

End Sub

Script2.vbs

a(1)

При запуске .wsf - ошибка.
Я иду в неправильном направлении?
В принципе, такой агрегатор бы устроил, но что-то мне подсказывает, что всё не так просто.

"Единство,- возвестил оракул наших дней: -
Быть может спаяно железом лишь и кровью"…
Но мы попробуем спаять его любовью,-
А там увидим, что прочней…    (Ф. Тютчев)       Тут хорошая справка по vbs.

8

Re: VBS : Импорт процедур из внешнего скрипта

В правильном. Только Script2.vbs:

a 1

Это же не функция.

9

Re: VBS : Импорт процедур из внешнего скрипта

Нет, это процедура, с параметром.
А что?

"Единство,- возвестил оракул наших дней: -
Быть может спаяно железом лишь и кровью"…
Но мы попробуем спаять его любовью,-
А там увидим, что прочней…    (Ф. Тютчев)       Тут хорошая справка по vbs.

10

Re: VBS : Импорт процедур из внешнего скрипта

Как это что? Она не вызывается со скобками.

11

Re: VBS : Импорт процедур из внешнего скрипта

Попробую пояснить ещё раз начальную задачу.
Есть файл Common.vbs, в котором содержатся типовые процедуры и функции.
Когда пишу новый скрипт, указываю, что есть вот такой файл, и использую в этом новом скрипте процедуры и функции из Common.vbs, не копируя их в тело основного скрипта.
В HTA это делается при помощи

<script language="VBScript" src="Common.vbs"></script>
"Единство,- возвестил оракул наших дней: -
Быть может спаяно железом лишь и кровью"…
Но мы попробуем спаять его любовью,-
А там увидим, что прочней…    (Ф. Тютчев)       Тут хорошая справка по vbs.

12

Re: VBS : Импорт процедур из внешнего скрипта

Flasher пишет:

Как это что? Она не вызывается со скобками.

Упс.
Убрал скобки, результат тот же...

"Единство,- возвестил оракул наших дней: -
Быть может спаяно железом лишь и кровью"…
Но мы попробуем спаять его любовью,-
А там увидим, что прочней…    (Ф. Тютчев)       Тут хорошая справка по vbs.

13

Re: VBS : Импорт процедур из внешнего скрипта

Таак, значит ещё порядок скриптов важен.
В принципе всё получилось.
Всем спасибо за ответы.

"Единство,- возвестил оракул наших дней: -
Быть может спаяно железом лишь и кровью"…
Но мы попробуем спаять его любовью,-
А там увидим, что прочней…    (Ф. Тютчев)       Тут хорошая справка по vbs.