Windows сценарий файлы - Windows Script File

Windows сценарий файлы
Файл атауын кеңейту
.wsf
ӘзірлеушіMicrosoft
Пішім түріСценарий жазу
КонтейнерСценарийлер

A Windows сценарий файлы (WSF) - қолданатын файл түрі Microsoft Windows сценарий хосты. Бұл араластыруға мүмкіндік береді сценарий тілдері JScript және VBScript бір файл ішінде немесе басқа сценарий тілдері сияқты Перл, REXX нысаны, Python, немесе Кикстарт егер пайдаланушы орнатқан болса. Осы типтегі сценарийлерді басқа көптеген сыртқы сценарийлерді a көмегімен байланыстыру үшін пайдалануға болады src параметрі <script> тегіне ұқсас мәнде белгілеңіз HTML. Windows сценарий файлдарының кеңейтімі бар «.WSF». WSF әр сценарий модуліне өте қарапайым сілтеме жасайды XML төменде көрсетілгендей иерархия, осы стандарттардан тыс <script> тегтер. «Сөзбе-сөз қолдану</script>«немесе»<script>«сіздің ішіңізде <script> белгілерді және осыған ұқсас қиындықтарды қолдану арқылы шешуге болады CDATA, мысалдарда көрсетілгендей.

Оқшаулау қатесі

WSF қателерді оқшаулау үшін пайдалы болуы мүмкін. Оның модульдік сипаты бір сценарий сілтемесінің екінші сценарийге кедергі келтіруіне жол бермейді. Қате шығаратын және болмайтын модуль бар WSF мысалы:

<?xml version="1.0" ?> <жұмыс id =«Ішінара жұмыс істейді»>   <!-- This will not work -->   <сценарий тіл =«VBScript»>'         WScript.жаңғырық 4/0 'Әй, балам! Сіз нөлге бөле алмайсыз ...     ]]>   </script>   <!-- This will work... definitely... -->   <сценарий тіл =«VBScript»>     <![CDATA[         WScript.жаңғырық «Сәлем, сценарийлер!» & vbNewline & _                      «Керемет! Бұл жұмыс істеді!»'    ]]>   </script> </job>

Бірінші сценарий модулі «нөлге бөлу» қатесін тудырады. Әдетте бұл сценарийдің аяқталуына әкеледі Windows сценарий хосты бірақ бұл модульдік әдіс сценарийге екінші сценарий модулін жалғастыруға және орындауға мүмкіндік береді.

Аралас тілдік қолдау

Windows скрипт файлы бірнеше тілдерді қолдайды Windows сценарий хосты анықтама. Бұл файл пішімінің бір ерекшелігі - сіз бірден бірден көп қолдануға болады. Бұл басқа сценарий тілінен бір сценарий тілін пайдалану кодын алуға болатындығын білдіреді. Ұзақ уақыт бойы ұмытылмас мысал VBScript пайдаланушылар - бұл Microsoft корпорациясының қолдануы JScript сұрыптау сұранысына қызмет көрсету VBScript өйткені мәндер массиві үшін кіріктірілген сұрыптау функциясы жоқ. VBScript пайдаланушылар өздерінің сұрыптау әдісін жаза алады немесе ADO сияқты бар объектіден қарызға алады (ActiveX деректер нысандары ) Жазба немесе .NET (.NET Framework ) ArrayList, бірақ массивті сұрыптаудың ең жылдам тәсілі - кірістірілген әдісті қолдану JScript. Мұның қалай жұмыс істейтінінің негізгі мысалы:

<?xml version="1.0" ?><!-- Mixing JScript and VBScript --> <жұмыс id =«SORT-VBScriptWithJScript»>   <сценарий тіл =«JScript»>     функциясы SortVBArray(arrVBArray) {қайту arrVBArray.toArray().сұрыптау();}   </script>   <сценарий тіл =«VBScript»>'     '** Ең жылдам сұрыптау: VBScript-тен Jscript сұрыптауын шақыру     myData = «a, b, c, 1,2,3, X, Y, Z, p, d, q»     wscript.жаңғырық «Құндардың бастапқы тізімі:» & vbTab & myData     басталу уақыты = таймер()     сұрыпталғанАрай = SortVBArray(Сызат(myData,","))     аяқталу уақыты=таймер()     jscriptTime = дөңгелек(аяқталу уақыты-басталу уақыты,2)     wscript.жаңғырық «JScript сұрыпталды» & jscriptTime & «секундтар:»  & vbTab & сұрыпталғанАрай'    ]]>   </script> </job>

Шығарылым сұрыпталғанға сәйкес келеді ASCII код тізбегі:

Түпнұсқа мәндер тізімі: a, b, c, 1,2,3, X, Y, Z, p, d, qJScript 0 секундта сұрыпталған: 1,2,3, X, Y, Z, a, b, c , d, p, q

Экспозициялық тұрақтылар

WSF-тің тағы бір өте пайдалы ерекшелігі - бұл XML орағышының объект сілтемесімен немесе басқару элементімен байланыстырылуы мүмкін, сондықтан сіз сол объектінің тұрақтыларын жариялаудың орнына қолдана аласыз. Тұрақты түрде VBScript және JScript файлдар, сіз тұрақты мәнді жариялауға мәжбүр болар едіңіз (ішкі мәндерден тыс) Windows сценарий хосты ) тұрақтысын қолдану үшін. Мұның мысалы төменде көрсетілген:

constadLockBatchOptimistic=4MsgBox«» Мәні «» adLockBatchOptimistic «» «&_adLockBatchOptimistic&".",vbАқпарат,«adLockBatchOptimistic»

Егер сіздің объектілік құжаттама тек тұрақтының атауына сілтеме жасаса, тұрақты мәнге жүгінбейтін болса, онда сіз оның көмегінсіз мәнді біле алмайсыз. Интеграцияланған даму ортасы олардың неге тең келетінін айту үшін. WSF анықтамалық декларациясын қолдану арқылы тұрақты мәндерді олардың мәндерін жарияламай пайдалануға болады. Төмендегі мысалда ADO-да бірнеше жалпы тұрақтылардың мәндері келтірілген (ActiveX деректер нысандары ) Жазба.

<?xml version="1.0" ?>Бұл өте ресми мысалға ескертулер: CDATA XML талдаушысын елемеуге көмектесу үшін қолданылады  сценарий мазмұнындағы ерекше кейіпкерлер.  CDATA ашық және жабық болуы керек  оларға түсініктеме беру арқылы VBScript-тен.--><package> <жұмыс id =«EnumerateConstantsADO»>  <сілтеме объект =«ADODB.Recordset» />  <сценарий тіл =«VBScript»>'    күңгірт тақырып, str, мен    ctecArray = Массив(«adOpenUnspecified»,«adOpenForwardOnly», _                      «adOpenKeyset»,«adOpenDynamic»,«adOpenStatic»)    тақырып = «Тұрақтыға арналған ADO рекордтық мәндері»    str = тақырып & vbNewLine & vbNewLine    str = str & «* CursorTypeEnum тұрақтылары *» & vbNewLine    Үшін мен = 0 дейін ubound(ctecArray)      str = str & Эвал(ctecArray(мен)) & vbTab & ctecArray(мен) & vbNewLine    Келесі    str = str & vbNewLine    str = str & «* LockTypeEnum тұрақтылары *» & vbNewLine    ltecArray = Массив(«adLockUnspecified»,«adLockReadOnly», _                      «adLockPessimistic»,«adLockOptimistic», _                      «adLockBatchOptimistic»)    Үшін мен = 0 дейін ubound(ltecArray)      str = str & Эвал(ltecArray(мен)) & vbTab & ltecArray(мен) & vbNewLine    Келесі    MsgBox str, vbАқпарат, Тақырып'  ]]>  </script> </job></package>

Файлдан жоғарыда көрсетілген сценарийді «.WSF» сияқты кеңейтілген, мысалы «EnumerateConstantsADO.wsf», төменде көрсетілген нәтиже береді:

ADO жазба жиынының мәндері * CursorTypeEnum тұрақтылары * -1 adOpenUnspecified0 adOpenForwardOnly1 adOpenKeyset2 adOpenDynamic3 adOpenStatic * LockTypeEnum Constants * -1 adLockUnspecified1 adLockReadOnimisticList

Сонымен қатар, тұрақтылықты көрсету үшін объектілік сілтемені қолдану сценарийді стандартты бағдарламалау тілінде жазуға ұқсас етеді. Іс жүзінде VBScript-те жазылған үлгі сценарийдің мазмұны a-ға жинақталады Visual Basic Бағдарлама ADODB сілтемесін қолданғанша, дәл солай іске қосыңыз.

Сондай-ақ қараңыз

Сыртқы сілтемелер