Рубрика «vbscript»

Попалась мне задачка оптимизации, а так как я большой фанат Экселя, то и выбор инструмента был скорым. Единственная пакость: Эксель дико медленный. Так, на одну итерацию уходило как минимум 35 минут, а таких итераций планировалось сделать 1275 (как минимум)!

Цель этого небольшого проектика – ускорить исполнение VBA скриптов задействуя все доступные мне железяки: GPU и CPU. Ну и до кучи, так как библиотека моя, была реализована многозадачность.

Для тех, кто любит читать только код и не любит "растекания мыслию по древу", код находится здесь, инсталлятор Читать полностью »

Некоторые гос. структуры формируют отчёты в doc файлах. Где-то это делается руками, а где-то автоматически. Представим, что вам поручено обработать тонну таких документов. Это может быть необходимо для вычленения какой-то конкретной информации или просто проверки содержимого. Нам нужно вынуть только неформатированный текст без графиков и картинок. К примеру такие данные проще засовывать в нейронную сеть для дальнейшего анализа.

Вот некоторые варианты для самого обычного человека:

  • Ручками перебрать все файлы по одному. Уже после десятого документа к вам придёт мысль о том, что вы делаете что-то не так.
  • Попробовать найти в интернете специальную библиотеку (расширение) для работы с doc файлами на языке программирования, которым вы владеете. Потратить часок другой на понимание как работать с этой библиотекой. Также вам ещё предстоит столкнуться с тем, что принципы работы с doc и docx слегка отличаются.
  • Попытаться автоматизировано пересохранить все документы в другой формат, с которым будет удобнее работать.

Как раз о последнем варианте и пойдёт речь.

И на помощь к нам спешит vbs скрипт. vbs скрипт можно вызвать из командной строки, что можно сделать в любом языке программирования.
Читать полностью »

Давно в компании используем MS Exch с AD, но большая часть компов в удаленных филиалах не заведены в домен, и так же давно нашего ГД раздражало, что народ в подписи использует все, что угодно, только не принятый корпоративным стандартном шаблон.

Подумав немного и прикинув дальнейшие нервные траты на объяснения почему это нельзя причесать, я решил что лучше сделать это.

Покопавшись в инете не нашел примеров реализации подписи по заранее написанному шаблону, и пришлось ваять самому.

Решил это оформить в виде запроса у пользователя через диалоговое окно его принадлежности к нужному объекту. Дабы не плодить кучу InputBox решил реализовать это через всплывающее окно IE, из которого в дальнейшем вытягиваются все нужные данные.
Читать полностью »

За несколько лет работы в SAP, как пользователя, я составил большое количество различных скриптов для облегчения работы в SAP, т.к. SAP «из коробки» довольно неудобен для быстрой и эффективной работы. Особенно раздражает то, что за один раз невозможно вставить в таблицу больше строк, чем отображается на экране. Приходится вставлять частями, прокручивая таблицу. На невысоком широкоформатном мониторе так вообще ужасно неудобно. Я как-то давно, еще до составления скриптов, свой монитор ставил вертикально и поворачивал изображение, чтобы отображалось больше строк.

Решил поделиться своими наработками с общественностью.
Читать полностью »

В статье речь пойдет о специфических для проектных предприятий процедурах документооборота, а точнее, об интеграции технического документооборота (у нас – на основе TDMS) и внешней переписки. На предприятиях других типов тоже могут существовать аналогичные потребности, поэтому, если у вас есть вопросы в отношении интеграции или автоматизации с помощью easla.com, статью также имеет смысл прочитать – тут описываются интересные технические детали.
Ревизии и переписка в проектном институте. Интеграция easla.com и TDMS - 1
Я собирался выступить на ежегодной конференции в ПАО «Гипротюменнефтегаз», однако из-за сильной текущей загрузки просто не успел подготовиться. Чем не оправдал ожиданий моих знакомых и коллег (ожидалась небольшая публичная дискуссия). Описываемое далее решение не содержит ничего революционного с организационной точки зрения, но, смею надеяться, некоторого внимания оно все же заслуживает.

Читать полностью »

Предисловие

Все началось с того, что купленное корпоративное решение для аудита систем не предоставляло нужную информацию по используемому антивирусному продукту, да и работала слишком уж долго, а панель управления, используемого компанией антивируса, оставляет желать лучшего. Решено было использовать «костыль» для сбора информации об антивирусах в домене.

Приведенный ниже сценарий обрабатывает статусы состояний только антивирусов, используемых в нашей корпоративной сети.
Читать полностью »

Командный язык Windows весьма скуден, но даже несмотря на это, множество энтузиастов со всего мира продолжают с ним экспериментировать, открывая подчас вещи весьма неожиданные, которые, наверное, все же правильнее было бы назвать багами. Как бы там ни было, факт остается фактом: скриптовая (и не только) малварь была, есть и будет покуда существует IT-индустрия (а не только Microsoft, как полагают многие). Речь пойдет о лазейках в командных сценариях, позволяющих комбинировать их «бесшовно» с другими технологиями, что может быть использовано как во благо, так и во вред, так что давайте условимся сразу: все изложенное ниже является лишь информацией к размышлению, а не руководством к действию, карающемуся органами в погонах.
Читать полностью »

Исследователи из IBM X-Force обнаружили опасную уязвимость CVE-2014-6332, которой, по их заявлениям, подвержены все версии Microsoft Windows, начиная с Windows 95. Основное потенциально уязвимое приложение с этим багом — Internet Explorer, начиная от версии 3.0. Уязвимость позволяет получать несанкционированный доступ к пользовательским данным или удалённо запускать вредоносные программы на атакованном компьютере. При этом атакующий может обойти такие защитные механизмы, как «песочница» Enhanced Protected Mode, используемая в IE 11, и система безопасности Enhanced Mitigation Experience Toolkit (EMET).

image

Уязвимость появилась в коде приложений Windows ещё в 1996 году с выходом IE 3.0, где стал использоваться Visual Basic Script (VBScript). Атаки на основе этой уязвимости относятся к классу «манипуляции данными», то есть являются более редкой и более опасной техникой, чем «переполнение буфера» и другие классические способы взлома. Уязвимость связана с некорректной отработкой процедуры изменения размера массивов SafeArray, что позволяет незаметно сбивать адресацию и получать доступ к данным по любому адресу, а не только в рамках заданного массива.Читать полностью »

В 2006 году компания, где я работал, переходила с разрозненных доменов Windows NT 4 и Windows 2000 на единый и централизованный AD домен на основе Windows 2003. Компания наша очень большая, мульти-национальная, сотрудников сильно больше за 30 000 человек. Прежде, чем начну говорить про созданные скрипты, опишу немного архитектуру AD и нашу IT инфраструктуру.
Читать полностью »

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

Поэтому я задумался о системе восстановления файлов. Резервное копирование на машине проводится автоматически раз в неделю, что позволяет не терять данных, однако при частом изменении документов это не спасает. Издание еженедельное, полос немного — каталог с файлами вёрстки текущего выпуска занимает 1-2 гб. У нас не имеется отдельного файлсервера, все данные хранятся на моей машине, и используется по сети еще двумя ПК. Собственно, все карты мне в руки.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js