Обработчики скриптов WindowsWindows Script Engines. Windows скрипты


Скрипты для Windows XP, 7, 8, 10

Zotonic

Май 19, 2018

Zotonic — свободная система управления содержимым и каркас веб-приложений с открытым исходным кодом, построенная на языке Erlang и выпущенная на условиях Apache License версии 2.0. Часть… Скачать

CMS, Веб-разработчику, Веб-фреймворки, Разработчику, Скрипты, Средства разработки

YaBB

Апрель 19, 2018

YaBB (Yet another Bulletin Board) — движок интернет-форума, написанный на Perl, распространяемый под лицензией открытого программного обеспечения. Впервые был представлен интернет-общественности 4 июля 2000 года…. Скачать

CMS, Блоги, форумы, журналы, Веб-разработчику, Интернет, Скрипты

XOOPS

Апрель 12, 2018

XOOPS ([ˈzuːps]) — объектно-ориентированная система управления содержанием сайта (CMS), написанная на языке PHP и использующая в качестве базы данных для хранения информации MySQL. Название системы… Скачать

CMS, Веб-разработчику, Скрипты

Zikula

Апрель 8, 2018

Zikula — простая система управления контентом, распространяемая под свободной лицензией GNU General Public License. На её базе можно создавать, управлять и поддерживать динамические сайты. Zikula позволяет… Скачать

CMS, Веб-разработчику, Скрипты

Xaraya

Апрель 7, 2018

Xaraya — свободная система управления контентом (содержанием) веб-сайта. Она представляет собой расширяемое программное обеспечение с открытым кодом, написанное на PHP с использованием баз данных MySQL,… Скачать

CMS, Веб-разработчику, Скрипты

Wolf CMS

Март 7, 2018

Wolf CMS — свободная система управления содержанием, распространяемая на условиях свободного программного обеспечения и опубликованная под GNU General Public License version 3. Wolf CMS написана… Скачать

CMS, Веб-разработчику, Скрипты

WikkaWiki

Январь 26, 2018

WikkaWiki (ВиккаВики) — проект вики-движка, основанный на заброшенном движке WakkaWiki (ВаккаВики). Проект создан на языке PHP и использует MySQL. Проект распространяется на условиях Универсальной общественной… Скачать

CMS, Веб-разработчику, Скрипты

WackoWiki

Сентябрь 9, 2017

WackoWiki (произносится как «Ва́ккоВики», в документации часто используется просторечное название «Ва́ка») — свободный вики-движок на PHP. В настоящий момент выпущена версия R5.5. Основное предполагаемое применение,… Скачать

CMS, Веб-разработчику, Скрипты

W-script

Сентябрь 8, 2017

W-script (Wallpapers Script, W-Script, Скрипт для Обоев) — бесплатная система управления контентом (CMS), предназначенная для организации галереи обоев для рабочего стола или фотографий. Имеет расширенные… Скачать

CMS, Веб-разработчику, Скрипты

VirtueMart

Август 23, 2017

VirtueMart (произносится вёчьюмарт), ранее известный как mambo-phpShop — свободное программное обеспечение для создания интернет-магазина, созданное для дополнения таких систем управления содержимым веб-сайта, как Mambo и… Скачать

CMS, Веб-разработчику, Скрипты

wikiprograms.org

Книги по Windows Script Host | ProgBook

В книге «Скрипты для администратора Windows. Специальный справочник» находятся базовые сведения, описания и примеры скриптов, которые применяют для администрирования Windows. Приводится рассмотрение основных команд и ключевых слов, используемых в интерпретаторе .bat файлов, интерпретаторе KiXtart и Windows Script Host. Здесь же имеются и рабочие примеры скриптов, выполняющие самые разнообразные задачи по автоматизации работы в среде Windows.

В книге «Командные файлы и сценарии Windows Script Host» Андрея Попова описываются основные команды Windows 9x/NT/2000 и утилиты пакета Windows NT Resource Kit, требуемые при создании командных файлов. Также здесь пользователи ознакомятся с сервером сценариев Windows Script Host (WSH), в которых возможно применение объектов ActiveX для автоматизации задач администрирования операционной системы и управления работой приложений. В содержании книги имеются примеры командных файлов и сценариев WSH, созданных на языке JScript и которые осуществляют доступ к базам данных, файловой системе и службам каталогов.

Книга «Windows Script Host для Windows 2000/XP» Андрея Попова содержит в себе описание сервера сценариев Windows Script Host (WSH) версии 5.6, являющегося одним из стандартных компонентов Windows XP и доступного для установления в Windows более ранних версий. Здесь имеются сценарии на языках VBScript и JScript, показывающие использование стандартных объектов WSH 5.6, в том числе и создание из сценариев дочерних процессов и запуск сценариев на удаленных компьютерах. Для восприятия более сложных примеров приводятся сценарии, которые работают с базами данных, управляют приложениями Microsoft Office, организуют графический пользовательский интерфейс, и используют технологии ADSI (Active Directory Interface) и WMI (Windows Management Instrumentation) для решения задач администрирования. В книге освещаются вопросы практической работы с XML-файлами и создания COM-объектов, наиболее детально рассматриваются вопросы безопасности при работе со сценариями и имеются конкретные примеры настроек политики безопасности. Книга предназначена программистам и администраторам Windows.

В книге Гюнтера Борна «Руководство разработчика на Microsoft Windows Script Host 2.0» содержатся основы программирования сценариев для Microsoft Windows Script Host 2.0. Изучив данную книгу, пользователь сможет научиться ставить на автомат, при помощи сценариев, решение каждодневных вопросов. Например, настройку Windows и вызов приложений, управление учётными записями пользователей и резервное копирование файлов. В этом издании находятся многочисленные примеры на языках VBScript и JScript. В дополнение к книге идёт компакт-диск с исходными текстами примеров, справочным руководством по языкам программирования сценариев VBScript и JScript, описанием объектной модели WSH, утилитами и электронной версией книги на английском языке. В данной публикации — 14 глав, 2 приложения и предметный указатель. Названия команд, диалоговых окон и других интерфейсных элементов ОС написаны на английском и на русском языках.

progbook.ru

ShS's Blog — Скрипты для Windows (PowerShell, Jscript, VBScript, Batch.), etc. Автоматизация административных задач.

Пришла беда откуда не ждали: после установки PowerShell v 5.0. любой запуск PowerShell на моем компьютере стал сопровождаться сообщением об ошибке:

. C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1 : Cannot dot-source this command because it was defferent language mode. To invoke this command without importing its contents, omit the ‘.’ operator.

Из сообщения об ошибке понятно, что PowerShell запустился в режиме ограниченной функциональности (constrained language mode) из-за чего и не  смог выполнить профиль. Погуглив, я обнаружил интересный топик на одном из форумов, автор которого утверждал, что причина такого поведения PowerShell v5.0 – настройка компьютера на функционирование в режиме белого списка запускаемых программ при помощи SRP. Я так же использую настройку запуска программ в режиме белого списка, посему решил проверить эту гипотезу, запуская PowerShell при включенном и выключенном SRP, и она полностью подтвердилась. Я сначала понадеялся, что constrained mode удастся отключить при помощи переменной окружения __PSLockdownPolicy, однако, оказалось, что для PowerShell v5  это не так: ни пользовательская, ни системная переменные окружения не смогли заставить PowerShell запуститься в режиме Full Language mode. Я обратился к Вадимсу Подансу, в надежде, что он в курсе нововведений, произошедших в PowerShell v 5.0. Оказалось, что разработчики PowerShell в v5.0 стали закручивать гайки, и на машинах, работающих в режиме белого списка, PowerShell теперь принудительно запускается в constrained language mode. К сожалению, запуск PowerShell в ограниченном режиме (constrained language mode) влечет за собой следующие очень нехорошие последствия: перестает выполняться профиль пользователя (а, значит, невозможно настроить под себя интерактивный режим работы консоли), не работает отладчик (а это уже совсем печально).

Continue reading ‘PowerShell v 5.0 стартует в ограниченном языковом режиме (constrained language mode) при запуске на компьютере, работающем в режиме белого списка (SRP/Bitlocker). Как этого избежать?’ »

Filed under PowerShell | Tagged Bitlocker, PowerShell, SRP |

За время функционирования ОС windows в систему устанавливается большое количество обновлений, частично более поздние обновления заменяют более ранние, которые можно было бы и удалить (или сжать), чтобы они не занимали места на диске. Как известно, функционал очистки системы от ненужных обновлений для Win2k8r2/Win7 был почему-то интегрирован в мастер “Очистки диска” (хотя в более старших версиях ОС этот функционал интегрирован в DISM). Для того, чтобы воспользоваться мастером очистки диска для очистки от ненужных обновлений необходимо установить обновление kb2852386, если это еще не было сделано ранее, затем, вызвав мастер “Очистка диска”, “взвести галку” “Очистка обновлений windows” и произвести очистку. Вот тут нас и ожидает сюрприз: мастер “Очистка диска” по умолчанию не установлен в системе. Официально для его установки требуется доустановить компонент Desktop experience, К сожалению этот компонент содержит не только мастера “Очистки диска”, но и много других программ, которые не очень то и нужны на сервере. Существует и другой неофициальный способ установки: нужно скопировать пару файлов из папки WinSxS.

Скопировать эти файлы можно было бы и при помощи обычного startup-скрипта или GPP, но мы не ищем легких путей так же можем воспользоваться технологией Desired State Configuration   (DSС), которая позволяет нам описать желаемую конфигурацию, применить ее к серверу(серверам) и контролировать соответствие сервера заданной конфигурации.

Continue reading ‘PowerShell DSC и Мастер очистки диска (cleanmgr) на win2k8r2’ »

Filed under PowerShell | Tagged CleanMgr, DSC, PowerShell |

По следам своего недавнего инцидента: Перестали устанавливаться некоторые обновления на одном из серверов Win2012 R2. Впервые столкнулся ситуацией, когда обновления не ставились не из-за проблем с агентом обновления Windows Update или повреждением папки %windir%\SoftwareDistribution. Неисправность проявлялась очень странно:часть обновлений устанавливалась без проблем, а установка некоторого подмножества других обновлений всегда стала завершаться одной и той же ошибкой (0x800F0831).

Continue reading ‘Fixing component store corruption’ »

Filed under Windows Systems, WSUS | Tagged 0x800F0831, Component Store Corruption, Windows Server |

Давно уже написал скрипт для резервного копирования Windows 2008 R2/2012 штатными средствами, но руки все никак не доходили написать статью в бложек, исправляюсь. Скрипт, да и сама статья несколько вторичны. Основные идеи, которые легли в его/ее основу, были заимствованы из статей Вадимса, которые он написал еще аж  в 2009 году. Поэтому сильно рекомендую сначала перейти по ссылке и прочитать эти статьи, а потом возвращаться сюда. Зачем потребовалось вообще что-то писать, если Вадимс уже все написал? Ну, хотя бы потому, что шаблон-скрипт, который он опубликовал, содержит ошибки и немного не работает . Ну, и кроме того, некоторая информация, которую он опубликовал также содержит ошибки, IMHO. Поэтому,  очень рекомендую прочитать еще и вот эту статью: Backup Version and Space Management in Windows Server Backup.

Continue reading ‘Резервное копирование Windows 2008 R2/2012 при помощи скрипта на PowerShell.’ »

Filed under PowerShell | Tagged Backup, PowerShell |

MS выпустил обновление kb2823324, после установки которого на компьютеры, где установлены антивирусы Касперского KAV6 и KES8, начинаются следующие чудеса:при загрузке ОС стартует chkdsk, который проверяет и правит системный раздел, после чего следует перезагрузка с нормальной загрузкой ОС. При следующей перезагрузке ОС все повторяется снова (т.е. в процессе работы ОС с системным разделом что-то происходит, и он помечается, как «грязный»).KL судорожно выпустила патчик и предлагает его всем желающим на тестирование. Патчик помагает. Однако недавно, MS выпустила бюллетень безопасности и статью kb, в которых призывает удалить обновление kb2823324, т.к. оно приводит к сбоям.

Microsoft is investigating behavior where systems may not recover from a restart, or applications cannot load, after security update 2823324 is applied. We recommend that customers uninstall this update. As an added precaution, Microsoft has removed the download links to the 2823324 update while we investigate.

support.microsoft.com/kb/2839011/en-us

V2.0 (April 11, 2013): Added links to Microsoft Knowledge Base Article 2823324 and Microsoft Knowledge Base Article 2839011 under Known Issues. Removed Download Center links for Microsoft security update 2823324. Microsoft recommends that customers uninstall this update. See the Update FAQ for details.

technet.microsoft.com/en-us/security/bulletin/ms13-036

Continue reading ‘Антивирус Касперского и KB2823324’ »

Filed under Active Directory, PowerShell, Scripts | Tagged Kaspersky, KB2823324 |

Не так давно Microsoft сделала доступной версию Internet Explorer 10 для windows 7. Начитавшись различных хвалебных статей о его быстроте, я решил посмотреть на это своими глазами и для начала установил его себе на рабочее место. Потренировавшись на кошках, пришел к выводу, что субъективно он действительно работает быстрее, чем IE9 и уж тем более IE8, и собрался уже было приступить к развертыванию его на всех компьютерах предприятия, как внезапно обнаружил, что на IE10 почему-то не действуют мои старые групповые политики и, более того, в редакторе групповых политик на моем компьютере исчез узел “Настройка Internet Explorer”/“Internet Explorer Maintenance” (IEM).

Continue reading ‘Управление IE10 при помощи групповых политик в среде Windows 2008 R2/Windows 7’ »

Filed under Group Policies, IE | Tagged Group Policy, IE |

Имеется у нас сервер Dell R510 с установленной на нем Windows 2008 R2 в режиме core с ролью Hyper-V. На этой хостовой машине развернута «виртуалка» Windows 2008 R2, на которой (в свою очередь) установлен SQL сервер. Все было хорошо, но, по прошествии некоторого времени, гостевая машина начала «терять сеть». Происходило это с завидной периодичностью (где-то раз в месяц или чаще). Причем в логах гостевой машины можно было наблюдать только события, которые являлись следствием «потери сети» (невозможно связаться с DC, невозможно применить политику, невозможно выполнить синхронизацию времени и т.п.), но не их причиной. Снаружи по сети гостевая машина также была недоступна (и даже не пинговалась). В логах хостовой машины так же ничего подозрительного обнаружить не удалось. После перезагрузки гостевой машины все приходило в норму до следующего раза. Continue reading ‘Гостевая ОС, работающая на хосте под Windows 2008 R2 c Hyper-V, теряет сеть.’ »

Filed under Windows Systems | Tagged Hyper-V |

13.03.2012 Microsoft выпустила очередную порцию обновлений, устраняющих недавно обнаруженные уязвимости. Среди этих “заплаток” имеет место быть и критическое обновление, устраняющее уязвимость в протоколе RDP. Успешная эксплуатация этой уязвимости позволит злоумышленнику удаленно выполнить произвольный код на атакуемой машине. Процитирую бюллетень безопасности MS12-020:

Настоящее обновление для системы безопасности устраняет две обнаруженные пользователями уязвимости в протоколе удаленного рабочего стола. Наиболее серьезная из этих уязвимостей делает возможным удаленное выполнение кода, если злоумышленник отправляет уязвимой системе последовательность специально созданных пакетов RDP. По умолчанию протокол удаленного рабочего стола (RDP) отключен во всех операционных системах Windows. Системы, на которых не включен RDP, не подвержены данной уязвимости.

Это обновление безопасности имеет уровень “критический” для всех поддерживаемых версий Microsoft Windows

Continue reading ‘Сбор информации об установке “заплаток” (HotFix’ов) в ОС Windows (на примере HotFix’ов из бюллетеня безопасности MS12-020)’ »

Filed under Active Directory, PowerShell, Scripts | Tagged AD, HotFix, PowerShell |

Что-то забросил я свой уютненький. Исправляюсь. Сегодня речь пойдет об установке 1c v8.2 в корпоративной среде при помощи групповых политик. И так, какие же способы развертывания совего софта нам предлагает 1с?

  1. Установка с помощью logon-скрипта
  2. Установка, путем размещения в общем сетевом каталоге
  3. Установка с помощью групповых политик

Continue reading ‘Установка 1с v 8.2 в корпоративной среде при помощи групповых политик’ »

Filed under 1C Deployment, Active Directory, Group Policies | Tagged 1C, AD, Deployment, Group Policy |

Недавно довелось настраивать свежеприобретенный сервер Dell R510 для работы с Hyper-V. Ниже размещу этапы “большого пути” с описание шишек, которые удалось набить и ссылками на источники информации, которые помогли в решении возникающих проблем. Последний раз покупка новых серверов у нас происходила несколько лет назад и, хотя в прошлый раз мы приобретали сервера того же производителя, выяснилось, что многое позабылось. Главная проблема для меня, как и, наверное, для всех бывших советских людей, – это проблема выбора . Когда начинаешь работать с серверами Dell на тебя сваливается огромное количество информации, подробнейшей документации, служебного ПО, позволяющего выполнить одни те же задачи разными способами, что порой не понятно – с чего начать? Собственно, чтобы в следующий раз не терзаться муками выбора, я и решил написать эти заметки.

Continue reading ‘Настройка сервера Dell R510 для работы с Hyper-V. Часть 1я (“железная”).’ »

Filed under Server Systems | Tagged Dell, firmware update, server |

shserg.ru

Windows 7. Скрипты, автоматизация и командная строка. - Microsoft - Учебники

Windows 7. Скрипты, автоматизация и командная строка.

Автор - Брайан Книттель

Данная книга Брайана Книттеля "Windows 7: Скрипты, автоматизация и командная строка", как и следует из названия, посвящена командной строке и написанию скриптов, которые можно использовать в среде Windows 7 для целей автоматизации или выполнения каких-то рутинных операций. Книга от начала до конца построена достаточно логично, но она написана таким образом, что вы можете приступить к чтению с любого места, быстро получить нужную информацию и отложить книгу в сторону. Ее необязательно читать от корки до корки и тем более необязательно штудировать руководства.

Книга разбита на четыре части. Часть I «Создание сценариев с помощью Windows Script Host» посвящена инструментарию Windows Script Host, в ней дается введение в язык программирования VBScript, рассматривается использование объектов и описываются процессы написания и отладки сценариев. Кроме этого в данной части предоставляется подробный справочник по многим объектам сценариев, предоставляемых системой Windows. Часть II «Среда окружения командной строки» посвящена командному языку Windows, используемому для написания пакетных файлов. Язык пакетных файлов, по сравнению со своим MS-DOS-прототипом, был существенно улучшен и стал намного более полезным средством автоматизации работы с файлами и каталогами. Во второй части также рассматривается среда окружения командной строки, эмуляция MS-DOS и способы изменения среды окружения с помощью административных инструментальных средств. В конце приведен обзор около 20 наиболее важных программ командной строки, поставляемых с Windows, куда входят средства управления текстовыми файлами, утилиты для работы с сетями, ярлыки графического пользовательского интерфейса и многое другое. Часть III «Введение в Windows Power Shell» дает представление о Windows PowerShell, новейшей и самой необычной среде выполнения сценариев командной строки. PowerShell является эффективным и своеобразным языком программирования. Его можно использовать для выполнения универсальных вычислений, для обработки файлов и данных любого типа и для управления рабочими станциями Windows, серверами и приложениями. Несомненно, этот язык заслуживает изучения. И наконец, Часть IV «Приложения» предоставляет краткие справочники и указатели на те инструментальные средства, которые рассматриваются в данной книге. Там, где это возможно, включаются ссылки на страницы разделов данной книги, где можно найти более подробную информацию. В этой части также представлен указатель учебных сценариев и пакетных файлов, которыми можно воспользоваться в качестве отправных точек для создания ваших собственных проектов.

Издательство – Питер

Год издания – 2012

Формат книги - DJVU

Размер - 14,7 Мб

СКАЧАТЬ с depositfiles.com

Или

СКАЧАТЬ с turbobit.net

Любители печатных изданий могут заказать бумажный экземпляр этой же книги здесь:

it-ebooks.ru

Обработчики скриптов Windows | Microsoft Docs

  • 01/18/2017
  • Время чтения: 14 мин
  • Соавторы

Liquid error: Can't find the localized string inThisArticle for template Conceptual.

Для реализации обработчика скриптов Microsoft Windows создайте OLE COM-объект, который поддерживает следующие интерфейсы.To implement a Microsoft Windows Script engine, create an OLE COM object that supports the following interfaces.

ИнтерфейсInterface Описание:Description
IActiveScriptIActiveScript Предоставляет базовую возможность создания скриптов.Provides the basic scripting ability. Реализация этого интерфейса является обязательной.Implementation of this interface is required.
IActiveScriptParseIActiveScriptParse Предоставляет возможность добавления текста скрипта, вычисления выражений и т. д.Provides the ability to add script text, evaluate expressions, and so on. Реализация этого интерфейса является необязательной. Тем не менее, если он не реализован, обработчик скриптов должен реализовать один из интерфейсов IPersist* для загрузки скрипта.Implementation of this interface is optional; however, if it is not implemented, the script engine must implement one of the IPersist* interfaces in order to load a script.
IPersist*IPersist* Обеспечивает поддержку сохраняемости.Provides persistence support. Реализация по меньшей мере одного из следующих интерфейсов является обязательной, если интерфейс IActiveScriptParse не реализован.Implementation of at least one of the following interfaces is required if IActiveScriptParse is not implemented.

IPersistStorage: обеспечивает поддержку атрибута DATA={url} в теге OBJECT.IPersistStorage: Provides support for the DATA={url} attribute in the OBJECT tag.

IPersistStreamInit: обеспечивает поддержку для того, что и IPersistStorage, а также поддержку атрибута DATA="string-encoded byte stream" в теге OBJECT.IPersistStreamInit: Provides support for the same as IPersistStorage as well as the DATA="string-encoded byte stream" attribute in the OBJECT tag.

IPersistPropertyBag: обеспечивает поддержку атрибута PARAM= в теге OBJECT.IPersistPropertyBag: Provides support for the PARAM= attribute in the OBJECT tag.

Note

Возможно, что обработчик скриптов никогда не будет вызван для сохранения или восстановления состояния скрипта через IPersist*.It is possible that the scripting engine will never be called upon to save or restore a script state through IPersist*. Вместо этого используется IActiveScriptParse путем вызова IActiveScriptParse::InitNew для создания пустого скрипта, затем скрипты добавляются и подключаются к событиям с помощью IActiveScriptParse::AddScriptlet, а общий код добавляется с помощью IActiveScriptParse::ParseScriptText.Instead, IActiveScriptParse is used by calling IActiveScriptParse::InitNew to create a blank script, then scriptlets are added and connected to events with IActiveScriptParse::AddScriptlet and general code is added with IActiveScriptParse::ParseScriptText. Тем не менее обработчик скриптов должен полностью реализовать по меньшей мере один интерфейс IPersist* (предпочтительно IPersistStreamInit), так как другие ведущие приложения могут попытаться их использовать.Nonetheless, a scripting engine should fully implement at least one IPersist* interface (preferably IPersistStreamInit), because other host applications may try to make use of them.

В следующих разделах реализация обработчика скриптов Windows описывается более подробно.The following sections describe implementing a Windows Scripting engine in more detail.

Дополнительные сведения см. в справочнике по интерфейсам скриптов Windows.See the Windows Script Interfaces Reference for more information.

Стандарт реестраRegistry Standard

Обработчик скриптов Windows может идентифицировать себя с помощью идентификаторов категорий.A Windows Script engine can identify itself using category identifiers. В настоящее время скрипт Windows определяет два идентификатора категории.Windows Script currently defines two category identifiers.

КатегорияCategory Описание:Description
CATID_ActiveScriptCATID_ActiveScript Указывает, что идентификаторы классов (CLSID) являются обработчиками скриптов Windows, которые поддерживают как минимум интерфейс IActiveScript и механизм сохраняемости (интерфейсы IPersistStorage, IPersistStreamInit или IPersistPropertyBag).Indicates that the class identifiers (CLSIDs) are Windows Script engines that support, at a minimum, the IActiveScript interface and a persistence mechanism (the IPersistStorage, IPersistStreamInit, or IPersistPropertyBag interface).
CATID_ActiveScriptParseCATID_ActiveScriptParse Указывает, что идентификаторы классов (CLSID) являются обработчиками скриптов Windows, которые поддерживают как минимум интерфейсы IActiveScript и IActiveScriptParse.Indicates that the CLSIDs are Windows Script engines that support, at a minimum, the IActiveScript and IActiveScriptParse interfaces.

Несмотря на то, что IActiveScriptParse не является действительным механизмом сохраняемости, он поддерживает метод IActiveScriptParse::InitNew, который функционально эквивалентен IPersist*::InitNew.Although IActiveScriptParse is not a true persistence mechanism, it does support the IActiveScriptParse::InitNew method that is functionally equivalent to IPersist*::InitNew.

Состояния обработчика скриптовScript Engine States

В любой момент времени обработчик скриптов Windows может находиться в одном из нескольких состояний.At any given time, a Windows Script engine can be in one of several states.

РегионState Описание:Description
не инициализированuninitialized Скрипт не был инициализирован или загружен с помощью интерфейса IPersist*, или для него не задан интерфейс IActiveScriptSite.The script has not been initialized or loaded using an IPersist* interface, or does not have an IActiveScriptSite interface set. Обработчик скриптов обычно не работает в этом состоянии, пока не будет загружен скрипт.The scripting engine is generally not usable from this state until the script is loaded.
инициализированinitialized Скрипт был инициализирован с помощью интерфейса IPersist*, и для него задан интерфейс IActiveScriptSite, но он не подключен к объектам узла и событиям приема.The script has been initialized with an IPersist* interface and has an IActiveScriptSite interface set, but is not connected to host objects and sinking events. Обратите внимание, что это состояние просто означает, что IPersist*::Load, IPersist*::InitNew или метод IActiveScriptParse::InitNew были завершены и что был вызван метод IActiveScript::SetScriptSite.Note that this state simply means that the IPersist*::Load, IPersist*::InitNew, or IActiveScriptParse::InitNew method has been completed, and that the IActiveScript::SetScriptSite method has been called. Обработчик не может выполнять код в этом режиме.The engine cannot run code in this mode. Обработчик помещает в очередь код, который ему передает узел с помощью метода IActiveScriptParse::ParseScriptText, и после перехода в состояние "Запущен" выполняет код.The engine queues code that the host passes to it through the IActiveScriptParse::ParseScriptText method, and executes the code after transitioning to the started state.

Поскольку семантика языков может существенно различаться, обработчики скриптов не должны поддерживать переход в это состояние.Because languages can vary widely in semantics, scripting engines are not required to support this state transition. Однако переход в это состояние должны поддерживать обработчики, поддерживающие метод IActiveScript::Clone.Engines that support the IActiveScript::Clone method must, however, support this state transition. Узлы должны подготовиться к этому переходу и выполнить соответствующее действие: освободить текущий обработчик скриптов, создать новый обработчик скриптов и вызвать IPersist*::Load, IPersist*::InitNew или IActiveScriptParse::InitNew (возможно, также вызывать IActiveScriptParse::ParseScriptText).Hosts must prepare for this transition and take the appropriate action: release the current scripting engine, create a new scripting engine, and call IPersist*::Load, IPersist*::InitNew, or IActiveScriptParse::InitNew (and possibly also call IActiveScriptParse::ParseScriptText). Использование этого перехода следует рассматривать как оптимизацию приведенных выше шагов.Use of this transition should be considered an optimization of the above steps. Обратите внимание, что все сведения, которые обработчик скриптов получил об именах именованных элементов, и сведения о типе, описывающие именованные элементы, остаются допустимыми.Note that any information the scripting engine has obtained about the names of Named Items and the type information describing Named Items remains valid.

Поскольку языки сильно различаются, определить точную семантику этого перехода сложно.Because languages vary widely, defining the exact semantics of this transition is difficult. Как минимум, обработчик скриптов должен отключиться от всех событий и освободить все указатели SCRIPTINFO_IUNKNOWN, полученные путем вызова метода IActiveScriptSite::GetItemInfo.At a minimum, the scripting engine must disconnect from all events, and release all of the SCRIPTINFO_IUNKNOWN pointers obtained by calling the IActiveScriptSite::GetItemInfo method. Обработчик должен повторно получить эти указатели после повторного запуска скрипта.The engine must re-obtain these pointers after the script is run again. Обработчику скриптов также следует сбросить сценарий в исходное состояние, которое подходит для языка.The scripting engine should also reset the script back to an initial state that is appropriate for the language. VBScript, например, сбрасывает все переменные и сохраняет любой динамически добавленный код путем вызова метода IActiveScriptParse::ParseScriptText с установленным флагом SCRIPTTEXT_ISPERSISTENT.VBScript, for example, resets all variables and retains any code added dynamically by calling IActiveScriptParse::ParseScriptText with the SCRIPTTEXT_ISPERSISTENT flag set. Для других языков может потребоваться сохранить текущие значения (например, Lisp, так здесь нет разделения между данными и кодом) или выполнить сброс до хорошо известного состояния (сюда входят языки со статически инициализируемыми переменными).Other languages may need to retain current values (such as Lisp because there is no code/data separation) or reset to a well-known state (this includes languages with statically initialized variables).

Обратите внимание, что переход в состояние "Запущен" должен иметь ту же семантику (то есть обработчик скриптов должен оставаться в том же состоянии), что и вызов IPersist*::Save для сохранения обработчика скриптов и последующий вызов IPersist*::Load для загрузки нового обработчика скриптов. Семантика этих действий должна совпадать с IActiveScript::Clone.Note that the transition to the started state should have the same semantics (that is, it should leave the scripting engine in the same state) as calling IPersist*::Save to save the scripting engine, and then calling IPersist*::Load to load a new scripting engine; these actions should have the same semantics as IActiveScript::Clone. Обработчики скриптов, которые еще не поддерживают IActiveScript::Clone или IPersist*, должны обязательно учитывать поведение перехода в состояние "Запущен", чтобы такой переход не нарушал описанные выше условия, если позже была добавлена поддержка IActiveScript::Clone или IPersist*.Scripting engines that do not yet support IActiveScript::Clone or IPersist* should carefully consider how the transition to the started state should behave, so that such a transition would not violate the above conditions if IActiveScript::Clone or IPersist* support was later added.

Во время перехода в состояние "Запущен" обработчик скриптов отключится от приемников событий после выполнения соответствующих деструкторов и т. д. в скрипте.During this transition to the started state, the scripting engine will disconnect from event sinks after the appropriate destructors, and so on, are executed in the script. Чтобы избежать выполнения этих деструкторов, узел может сначала перевести скрипт в отключенное состояние до перехода в состояние запуска.To avoid having these destructors executed, the host can first move the script into the disconnected state before moving into the started state.

Используйте IActiveScript::InterruptScriptThread, чтобы отменить выполняющийся поток скрипта без ожидания завершения текущих событий и т. д., чтобы закончить выполнение.Use IActiveScript::InterruptScriptThread to cancel a running script thread without waiting for current events, and so on, to finish running.

запущенstarted Переход из состояния "Инициализирован" в состояние "Запущен" приводит к тому, что обработчик выполняет любой код, который был помещен в очередь в состоянии "Инициализирован".The transition from the initialized state to the started state causes the engine to execute any code that was queued in the initialized state. Обработчик может выполнять код в состоянии "Запущен", но он не подключен ни к каким событиям, добавленным с помощью метода IActiveScript::AddNamedItem.The engine can execute code while in the started state, but it is not connected to any events added through the IActiveScript::AddNamedItem method. Обработчик может выполнять код путем вызова интерфейса IDispatch, полученного из метода IActiveScript::GetScriptDispatch, или путем вызова метода IActiveScriptParse::ParseScriptText.The engine can execute code by calling the IDispatch interface obtained from the IActiveScript::GetScriptDispatch method, or by calling IActiveScriptParse::ParseScriptText. Возможно, что дальнейший процесс фоновой инициализации (прогрессивная загрузка) по-прежнему будет выполняться и вызов метода IActiveScript::SetScriptState с установленным флагом SCRIPTSTATE_CONNECTED может привести к блокировке скрипта до завершения инициализации.It is possible that further background initialization (progressive loading) is still ongoing, and that calling the IActiveScript::SetScriptState method with the SCRIPTSTATE_CONNECTED flag set may cause the script to block until initialization is complete.
подключеноconnected Скрипт загружен и подключен для получения событий от объектов узла.The script is loaded and connected for sinking events from host objects. Если это переход из состояния "Инициализирован", до входа в состояние "Подключен" и до подключения к событиям обработчик скриптов должен перейти через состояние "Запущен", выполнив необходимые действия.If this is a transition from the initialized state, the scripting engine should transition through the started state, performing the necessary actions, before entering the connected state and connecting to events.
отключенdisconnected Скрипт загружается и находится в состоянии выполнения, но временно отключен от приема событий от объектов узла.The script is loaded and has a run-time state, but is temporarily disconnected from sinking events from host objects. Это можно сделать либо логически (без учета полученных событий), либо физически (путем вызова метода IConnectionPoint::Unadvise на соответствующих точках подключения).This can be done either logically (ignoring events received) or physically (calling IConnectionPoint::Unadvise on the appropriate connection points). Если это переход из состояния "инициализирован", до входа в состояние "отключен" обработчик скриптов должен перейти через состояние "запущен", выполнив необходимые действия.If this is a transition from the initialized state, the scripting engine should transition through the started state, performing the necessary actions, before entering the disconnected state. Выполняющиеся приемники событий завершают работу до изменения состояния (для отмены выполняющегося потока скрипта используйте IActiveScript::InterruptScriptThread).Event sinks that are in progress are completed before the state changes (use IActiveScript::InterruptScriptThread to cancel a running script thread). Это состояние отличается от состояния "инициализирован" тем, что переход в это состояние не приводит к сбросу скрипта, состояние времени выполнения скрипта не сбрасывается и процедура инициализации скрипта не выполняется.This state is distinguished from the initialized state in that the transition to this state does not cause the script to reset, the run-time state of the script is not reset, and a script initialization procedure is not executed.
закрытclosed Скрипт был закрыт.The script has been closed. Обработчик скриптов больше не работает и возвращает ошибки для большинства методов.The scripting engine no longer works and returns errors for most methods.

На следующем рисунке показаны отношения между различными состояниями обработчика скриптов, а также показаны методы, которые вызывают переходы из одного состояния в другое.The following illustration shows the relationships between the various scripting engine states, and shows the methods that cause transitions from one state to another.

На следующем рисунке показаны действия, выполняемые обработчиком скриптов во время различных переходов между состояниями.The following illustration shows the actions that the scripting engine performs during the various state transitions.

Работа с потоками обработчика скриптовScripting Engine Threading

Поскольку обработчик скриптов Windows можно использовать во многих средах, очень важно сохранить его модель выполнения как можно более гибкой.Because a Windows Script engine can be used in many environments, it is important to keep its execution model as flexible as possible. Например, серверному узлу может потребоваться сохранить многопоточную архитектуру и одновременно эффективно использовать скрипт Windows.For example, a server-based host may need to preserve a multithreaded design while using Windows Script in an efficient manner. В то же время узел, который не использует потоки, например стандартное приложение, не должен испытывать нагрузку по управлению потоками.At the same time, a host that does not use threading, such as a typical application, should not be burdened with threading management. Скрипт Windows достигает этого компромисса, ограничивая способы, которыми свободнопоточный обработчик скриптов может выполнять обратный вызов к узлу, освобождая узел от этой нагрузки.Windows Script achieves this balance by restricting the ways a free-threaded scripting engine can call back to the host, freeing hosts from this burden.

Обработчики скриптов, используемые на серверах, обычно реализовывались как свободнопоточные COM-объекты.Scripting engines used on servers are typically implemented as free-threading COM objects. Это означает, что методы в интерфейсе IActiveScript и его связанных интерфейсах можно вызывать из любого потока в процессе без маршалинга.This means that methods on the IActiveScript interface and its associated interfaces can be called from any thread in the process, without marshaling. (К сожалению, это также означает, что обработчик скриптов должен быть реализован как внутрипроцессный сервер, так как OLE сейчас не поддерживает маршалинг между процессами свободнопоточных объектов.) Обработчик скриптов отвечает за синхронизацию.(Unfortunately, this also means that the scripting engine must be implemented as an in-process server, because OLE does not currently support interprocess marshaling of free-threaded objects.) Synchronization is the responsibility of the scripting engine. Для обработчиков, которые внутренне не допускают повторного входа, или для моделей языков, которые не являются многопоточными, процесс синхронизации может быть настолько простым, как сериализация доступа к обработчику скриптов с мьютексом.For scripting engines that are not internally reentrant, or for language models that are not multithreaded, synchronization could be as simple as serializing access to the scripting engine with a mutex. Конечно, определенные методы, такие как IActiveScript::InterruptScriptThread, не должны быть сериализованы таким образом, чтобы постоянно выполняющийся скрипт мог быть остановлен из другого потока.Of course certain methods, such as IActiveScript::InterruptScriptThread, should not be serialized in this way so that a stuck script can be terminated from another thread.

Тот факт, что интерфейс IActiveScript обычно является свободнопоточным, обычно означает, что интерфейс IActiveScriptSite и объектная модель узла также должны быть свободнопоточными.The fact that IActiveScript is typically free-threaded generally implies that the IActiveScriptSite interface and the host's object model should be free-threaded as well. Это усложняет реализацию узла, особенно в общем случае, когда узел представляет собой однопоточное приложение Windows с однопоточным контейнерным элементом управления ActiveX в его объектной модели.This would make implementation of the host quite difficult, particularly in the common case where the host is a single-threaded Windows-based application with single-threaded or apartment-model ActiveX Controls in its object model. По этой причине на использование обработчиком скриптов интерфейса IActiveScriptSite налагаются приведенные далее ограничения.For this reason, the following constraints are placed on the scripting engine's use of IActiveScriptSite:

Сайт скрипта всегда вызывается в контексте потока узлов.The script site is always called in the context of a host thread. То есть обработчик скриптов никогда не вызывает сайт скрипта в контексте созданного им потока. Он делает это только из метода обработчика скриптов, который был вызван с узла посредством IActiveScript и его производных через объект диспетчеризации обработчика скриптов, через сообщение Windows или из источника событий в объектной модели узла.That is, the scripting engine never calls the script site in the context of a thread that the scripting engine created, but only from within a scripting engine method that was called from the host through IActiveScript and its derivatives, through the exposed scripting engine's dispatch object, through a Windows message, or from an event source in the host's object model.

Сайт скрипта никогда не вызывается из контекста простого метода управления состояния потока (например, метод IActiveScript::InterruptScriptThread) или из метода IActiveScript::Clone.The script site is never called from within the context of a simple thread state control method (for example, the IActiveScript::InterruptScriptThread method) or from the IActiveScript::Clone method.

См. такжеSee Also

Интерфейсы скриптов WindowsWindows Script Interfaces

docs.microsoft.com

Как запускать скрипты через консоль

Довольно часто мне задают вопрос о том, как запустить скрипт через консоль Windows. Многие запускают скрипты двойным кликом и не могут понять, почему скрипт прекращает свою работу. Поэтому решил написать небольшую инструкцию по запуску Perl-скриптов через консоль.Как запустить консоль:

1. Пуск->Выполнить

2. Ввести "cmd" и нажать Enter

Появится подобное окно

Консоль поддерживает множество команд - ntcmds

Однако, для того, чтобы запустить скрипт, достаточно уметь пользоваться одной - cd.

Как запустить скрипт:

Предположим, на диске C: есть директория script, и в ней лежит скрипт test.pl.Для того, чтобы его запустить, требуется предварительно перейти в директорию со скриптом, набрав в консоли:cd c:\script

и нажать Enter. На экране отобразится нечто подобное:

Теперь нужно ввести имя скрипта (test.pl) и нажать Enter:

Если скрипт не запустился, и консоль выдала подобный текст:"test.pl" не является внутренней или внешнейкомандой, исполняемой программой или пакетным файлом.или'test.pl' is not recognized as an internal or external command,operable program or batch file.

То запускать придется так:c:\perl\bin\perl.exe test.pl

c:\perl\bin\perl.exe - путь до интерпретатора Perl, test.pl - запускаемый скрипт. Естественно, у вас в системе должен стоять ActivePerl или какой-нибудь другой интерпретатор.

Надеюсь, теперь мне перестанут задавать вопросы про консоль.

kaimi.io

Windows 7. Скрипты, автоматизация и командная строка - 5 Января 2015

Содержание:

Об авторе Посвящение Благодарности Введение А зачем все это изучать? Структура книги Соглашения, используемые в данной книге    Соглашения по оформлению текста    Специальные элементы Часть I. Создание сценариев с помощью Windows Script Host Глава 1. Windows Script Host Что такое сценарий Windows?    Что в WSH означает слово «Script»?    Что в WSH означает «Windows»?    Что в WSH означает слово «Host»?    Чем отличается создание сценариев от написания пакетных файлов? Языки сценариев    VBScript    JScript    Perl    Python    Open Object REXX    Ruby    Выбор языка Простой сценарий Типы файлов сценариев    JSE и VBE: Закодированные сценарии    Windows Script Files (WSF)    Компоненты Windows Script (WSC)    Настройки WSH Создание своего первого файла сценария    Создание и защита папки сценариев    Создание сценария    Средства редактирования сценариев Как Windows запускает сценарии    Wscript и Cscript    Способы запуска сценариев    Передача информации в сценарии    Сохранение результатов работы сценариев    Ключи Wscript и Cscript Запуск своих собственных сценариев    Добавление указаний на сценарии в переменную PATH    Запуск сценариев с помощью значка ярлыка    Создание ярлыка сценария    Запуск сценариев из пакетных файлов    Автозапуск сценариев Проблемы безопасности    Политика доверия и подписывание сценариев Отладка сценариев Где можно получить дополнительную информацию Глава 2. Руководство по VBScript Введение в VBScript    Переменные    Константы    Поименованныеконстанты    Операторы и выражения    Автоматическое преобразование Управление ходом выполнения сценария    Оператор If… Then    Оператор Select Case    Цикл Do While    Прекращение выполнения цикла с помощью оператора Exit Do    Вычисления с помощью оператора For… Next    Обработка коллекций и массивов с помощью цикла For… Each Функции VBScript    Вызов функций и подпрограмм    Документация и синтаксис    Функции работы со строками    Функции даты-времени Взаимодействие с пользователем    Функция MsgBox ()    Функция InputBox ()    Вывод простых текстовых сообщений с помощью метода Wscript. Echo Более сложные темы, касающиеся VBScript    Обработка ошибок    Процедуры: функции и подпрограммы    Массивы    Область видимости переменных Дополнительные источники информации Глава 3. Создание сценариев и работа с объектами Введение в объекты    Классы и экземпляры    Контейнеры и коллекции    Обозначение объектов Использование объектов в VBScript    Автоматизация и файлы документов    Разница между свойствами и методами    Вложенные объекты    Освобождение объектов    Работа с коллекциями Использование объектов при работе с JScript    Чувствительность к регистру символов    Работа с коллекциями Использование объектов при работе с ActivePerl    Выполнение Perl-сценариев в WSH    Интерфейс с объектами, используемый в Perl    Работа с коллекциями Использование объектов при работе с ActivePython    Работа с коллекциями Использование объекта WScript    Извлечение аргументов командной строки Поиск и использование необычных объектов Глава 4. Доступ к файлам и реестру Получение практических результатов Работа с файлами и папками    Scripting. FileSystemObject    Объект Scripting. Drive    Объект Scripting. Folder    Объект Scripting. File Чтение и запись файлов    Объект TextStream    Чтение текста из файлов    Запись текста в файлы    Работа со стандартным вводом (Stdin) и стандартным выводом (Stdout)    Чтение двоичных файлов Чтение и запись XML    Некоторые основы XML    Чтение XML-файла    Создание XML- или HTML-файла Работа с программами и ярлыками    Объект WScript. Shell    Запуск программ    Создание и изменение ярлыков Работа со средой окружения    Извлечение информации из среды окружения    Управление установками среды окружения Работа с реестром    Изучение разделов и параметров реестра    Сохранение информации в реестре Глава 5. Сетевые и принтерные объекты Управление сетевыми и принтерными подключениями Извлечение сетевой пользовательской информации Управления отображениями на буквы дисков    Создание перечня дисковых отображений с помощью EnumNetworkDrives    Добавление дисковых отображений    Удаление дисковых отображений    Установка отображений в сценарии Управление подключениями сетевых принтеров    Вывод информации о принтерах    Подключение к сетевым принтерам    Перенаправление принтеров из сеанса работы с DOS    Удаление принтерных подключений    Установка принтера по умолчанию Печать из сценариев Глава 6. Объекты сообщений и факсов Отправка из сценариев сообщений электронной почты с помощью CDO Объектная модель CDO    Объект CDO. Message    Работа с полями    Поля для объекта CDO. Message    Коллекция CDO BodyParts    Объект CDO BodyPart    Объект ADO Stream    Объект CDO. Configuration Отправка сообщений с помощью CDO    Создание сообщения    Добавление вложений    Включение изображений в HTML-сообщение    Указание получателей и темы    Указание сервера доставки    Отправка сообщения    Объединениевсегопредыдущеговединоецелое Отправка факсов из сценариев    Отправка факса с помощью сценария    Получение дополнительной информации об отправке факсов Глава 7. Инструментарий управления Windows Введение в инструментарий управления Windows    Функции WMI    Пространства имен    Удаленное управление Windows Создание WMI-подключений    Иерархия объектов WMI    Подключение с помощью объекта WbemScripting. SWbemLocator    Подключение с помощью моникера    Подключение к локальному компьютеру    Безопасность и аутентификация    Определение режимов безопасности WMI-коллекции и запросы    SWbemServices    WQL-запросы    SWbemObjectSet    SWbemObject    SWbemMethodSet и SWbemPropertySet Scriptomatic Примеры WMI    Сбор системной информации    Управление принтерами    Отслеживание пакетов обновлений Windows и критических обновлений    Управление службами и задачами Дополнительные источники информации Глава 8. Active Directory Scripting Interface Управление каталогом пользователя    Использование Active Directory Scripting Interface    Ограничения, накладываемые на ADSI при работе с Windows Script Host Концепции ADSI    Множественное наследование    Создание ADSI-объектов    Безопасность каталогов    Разница между контейнерами и листьями ADSI-объекты для провайдера WinNT:    IADs    IADsCollection и IADsContainer    Работа с ADSI-коллекциями    IADsComputer и IADsComputerOperations    IADsDomain    IADsFileService и IADsFileServiceOperations    IADsFileShare    IADsGroup    IADsMembers    IADsNamespaces    IADsPrintJob и IADsPrintJobOperations    IADsPrintQueue и IADsPrintQueueOperations    IADsService и IADsServiceOperations    IADsSession    IADsUser IIS и Exchange Управление Active Directory    Терминология X.500 и LDAP Объекты Active Directory    RootDSE    IADsO и IADsOU Разработка ADSI-сценариев EzAD Scriptomatic Дополнительные источники информации Глава 9. Использование сценариев для управления компьютерами и сетями Использование сценариев в реальном мире    Разработка сценариев для других пользователей Использование WSF-файлов    Справочник по формату WSF-файла    Предоставление справки в WSF-файлах    Обработка аргументов командной строки    Содержание более одного сценария в одном файле    Объединение всего предыдущего в единое целое Развертывание сценариев в сети Создание простой программы установки с помощью IExpress    Создание установочных сценариев или пакетных файлов IExpress    Работа с контролем учетных записей пользователей    Предоставление возможности отмены установки Создание сценариев для управления другими компьютерами    Удаленное выполнение сценариев    Репликация сценариев на несколько компьютеров Вопросы безопасности выполнения сценариев    Подпись сценариев    Кодировщик сценария Создание сценариев входа в систему    Сценарии входа в систему, определяемые в профиле пользователя    Сценарии для входа в систему, выхода из нее и для других событий для Windows 7 и Vista    Сценарии входа в систему, выхода из нее, запуска компьютера и команды на его выключение, связанные с групповой политикой Планирование автоматического запуска сценариев    Написание автоматически работающих сценариев    Отправка сообщения в журнал событий    Планирование выполнения сценариев с помощью Планировщика заданий    Планирование запуска сценария    Проверка запланированного выполнения сценария Часть II. Среда окружения командной строки Глава 10. Командная строка CMD Окно командной строки    Сравнение CMD и COMMAND Запуск CMD    Открытие окна командной строки с правами администратора    Ключи оболочки CMD    Запрещение расширений команд Обработка командной строки    Остановка программ, вышедших из-под контроля    Консольная программа ввода и вывода    Использование окна консоли    Перенаправление ввода-вывода и каналы    Копирование и вставка в окнах командной строки    Редактирование команд и список истории    Автозавершение имен    Включение автозавершения имен каталогов    Использование нескольких команд в одной строке    Группировка команд с помощью круглых скобок    Аргументы, запятые и кавычки    Отключение специальных символов Конфигурирование программы CMD    AutoRun    Подстановка переменных среды окружения    Путь поиска    Предопределенные и виртуальные переменные среды окружения    Установка исходных значений переменных среды окружения Встроенные команды    Расширенные команды    Вывод списка файлов с помощью команды Dir    Установка значений переменных с помощью команды set    Условная обработка с помощью команды if    Сканирование списка файлов с помощью команды for Получение дополнительной информации Глава 11. Пакетные файлы для пользы и развлечения Зачем нужны пакетные файлы? Создание и использование пакетных файлов Программирование пакетных файлов Вывод информации в пакетных файлах Подстановка аргументов Редактирование аргументов Условная обработка с помощью команды if    Основная команда if    Проверка наличия файлов и папок    Проверка успешности завершения программы    Выполнение после if нескольких команд    Расширенное тестирование Обработка нескольких аргументов Работа с переменными среды окружения    Редактирование переменных среды окружения Обработка нескольких элементов с помощью команды for    Использование в цикле for нескольких команд    Отложенные расширения Использование подпрограмм пакетных файлов Приглашение на ввод данных Полезные технологии пакетных файлов    Обработка ключей командной строки    Управление сетевыми отображениями    Проверка приемлемости аргументов    Ведение регистрационных журналов Глава 12. Среда окружения MS-DOS при работе под Windows Программы MS-DOS под управлением Windows    Виртуальная DOS-машина    MS-DOS и COMMAND. COM Конфигурация среды MS-DOS    Параметры окна и памяти    CONFIG.NT    AUTOEXEC.NT    Переменные среды окружения MS-DOS MS-DOS и работа в сети Вывод на печать из MS-DOS    Перенаправление печати    Распечатка содержимого экрана Конфигурирование последовательной передачи данных при использовании MS-DOS Использование специализированных устройств для MS-DOS Управление программами MS-DOS    Если что-то пойдет не так Глава 13. Утилиты командной строки Программы командной строки Windows Самыеценныепрограммыкоманднойстроки Быстрый вызов GUI Универсальные программы оболочки    findstr    more    tree    xcopy Средства управления файлами    attrib    cacls Эффективные средства управления    driverquery    runas    tasklist    taskkill    sc Утилиты для работы с сетью    ipconfig    net    netstat    Вывод списка активных подключений    nslookup    ping    tracert Дополнительные утилиты Часть III. Введение в Windows PowerShell Глава 14. Windows PowerShell Введение в Windows PowerShell    Объектно-ориентированная командная оболочка    Основанная на .NET Framework    Расширяемая среда Получение Windows PowerShell    Windows 7    Windows Vista и Windows XP    Windows Server 2008 R2    Windows Server 2008 R2 Server Core    Windows Server 2008 (pre-R2), 2003 R2 и 2003    Windows Server 2008 (Pre-R2) Server Core Среда PowerShell Окно командной строки PowerShell    Редактирование командной строки    Копирование и вставка    Приостановка вывода и прекращение выполнения вышедшей из-под контроля программы    Синтаксис командной строки И командлеты, и объекты, и сценарии, да когда же все это кончится! Получение справки Приглашение на завершение команд Псевдонимы    Как получить список псевдонимов    Как определить новый псевдоним Переход по каталогам и другим местам Безопасность PowerShell    Сценарии PowerShell и контроль учетных записей пользователей    Политика выполнения сценариев Профили PowerShell Глава 15. Программирование в среде PowerShell Язык программирования Windows PowerShell Синтаксис Windows PowerShell Комментарии Переменные и типы    Литеральные значения    Свойства и методы объекта    Конструкторы объектов    Вставка в строки    Специальные символы    Конструкция Here-String    Освобождение переменных    Предопределенныепеременные    Массивы    Константы Выражения    Сравнения с использованием массивов    Строковые операторы    Оператор выполнения &    Приоритетность операторов    Операторы присваивания    Значения операторов    Приведения к определенному типу    Передача по ссылке    Хэш-таблицы Передача управления    if    while    do… while и do… until    for    foreach    switch    break    continue    Программные блоки Обработка исключений    trap    try-catch-finally    throw Определение функций    Аргументы функции    Область видимости функций    Оператор Dot-Source    Область видимости переменных    Функции, работающие с каналами, и фильтры    Применение сплат-оператора Использование .NET API    Вызов статических функций-членов класса    Работа со строками    Работа с показаниями даты и времени    Преобразование значений    Математические функции Глава 16. Использование PowerShell Реальная работа с PowerShell Технология, использующая командную строку    Генерация объектов    Фильтрация    Переход к конкретным действиям Форматирование вывода командлета    Оператор - f Работа с файлами и папками    Определение факта существования файла    Чтение текста из файлов    Запись текста в файлы    Идентификация файлов по размеру Создание полезных сценариев    Комментируйте свою работу!    Обработка командной строки    Создание модулей    Обработка исключений как стратегия выхода Использование хэш-таблиц Интегрированная среда сценариев PowerShell    Начало работы с PowerShell ISE    Конфигурирование ISE    Создание и редактирование сценариев    Редактирование    Запуск сценариев в ISE    Установка контрольных точек и пошаговое выполнение    Интерактивное исследование и изменение значений переменных    Условные контрольные точки Удаленное и фоновое выполнение PowerShell Дополнительные источники информации Часть IV. Приложения Приложение А. Справочник по VBScript Свойства языка VBScript Синтаксис Общая структура программы на VBScript Типы данных и переменные    Примечания к значениям даты и времени    Область видимости переменных Выражения и операторы    Арифметические операторы    Операторы сравнения    Логические операторы Операторы программы Функции    Интервалы, относящиеся к функциям дат Предопределенные специальные значения Свойства VBA, отсутствующие в VBScript Приложение Б. Справочник по языку CMD и пакетных файлов Замена аргументов пакетного файла и переменной for Расширение переменных среды окружения Предопределенные переменные среды окружения Задание формата команд Встроенные команды    Модификаторы команды For    Операторы выражения set /a Приложение В. Указатель схем и учебных сценариев Указатель схем Указатель учебных сценариев и пакетных файлов Приложение Г. Справочник по программам командной строки Инструменты администрирования Встроенные команды и команды пакетного файла Команды DOS Команды для работы с файлами Удобные программы Сетевой инструментарий Вспомогательные средства разработки программ Утилиты TCP/IP GUI-программы Windows

radiosit.ru