Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Программирование "удобняшек" на VBScript (Часть 2)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

Открыть новую тему     Написать ответ в эту тему

ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вопросы, задачи и их решения по VBScript.

 
Мануал (english, 600 Кб). | Зеркало
MS Scripting 5.6 (700 КБ), включает последнюю версию VBS. Владельцам XP/2000(?) должен быть не нужен. | Зеркало
Немного на wikiпедии.
Предыдущие части: 1
 
Смежные темы:
Сценарии Windows
Командная строка, батники\сценарии (bat, cmd)
Скрипты KiXtart

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 04:12 12-07-2011 | Исправлено: Smitis, 23:28 26-02-2018
gap5



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ComradG

Цитата:
 
Цитата:
у НЕадмина могут быть проблемы?
нет, если не оперировать в скрипте объектами Win32, поэтому я и уточняю условия мониторинга загруженности процессора. не обещаю, но постараюсь что-нибудь сообразить.

Есть идеи как это реализовать без win32?

Всего записей: 1072 | Зарегистр. 30-05-2006 | Отправлено: 19:47 03-03-2012
ComradG



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
gap5

Цитата:
Есть идеи как это реализовать без win32?
без win32 не обойтись в скрипте по-любому, по крайней мере если речь о нативном синтаксисе; если зарегистрировать в системе COM-сервер, позволяющий вызывать API-шный функции из скрипта, то можно считать это решением. но! установка COM'а далеко не всегда оправдана (вдруг задача разовая), а потому лучше сразу написать утилитку, скажем, на асме или Си.

Всего записей: 2041 | Зарегистр. 05-07-2008 | Отправлено: 20:21 04-03-2012
gap5



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а если скрипт запускать от имени system, он будет адекватно отслеживать загрузку приложения под юзером?

Всего записей: 1072 | Зарегистр. 30-05-2006 | Отправлено: 21:36 04-03-2012
ComradG



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
а если скрипт запускать от имени system, он будет адекватно отслеживать загрузку приложения под юзером?
скрипт от имени системы заводить, все равно что домой кого попало приводить. адекватно скрипт может отслеживать и с правами админа, которых ему будет достаточно "за глаза".

Всего записей: 2041 | Зарегистр. 05-07-2008 | Отправлено: 21:42 04-03-2012
gap5



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В домене проще запускать от имени системы, чем городить отдельного юзера.

Всего записей: 1072 | Зарегистр. 30-05-2006 | Отправлено: 14:26 05-03-2012
fire4x



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Не работает. Как исправить???
 
Set oFso = CreateObject("Scripting.FileSystemObject")  
oFso.DeleteFolder "%APPDATA%\123", True
 
Добавлено:
Еще нужен скрипт для проверки реестра:
подсчитать подветки реестра,
если подветка одна, то действие 1, иначе - действие 2.

Всего записей: 503 | Зарегистр. 25-02-2008 | Отправлено: 21:39 07-03-2012 | Исправлено: fire4x, 21:47 07-03-2012
ComradG



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
В домене проще запускать от имени системы, чем городить отдельного юзера.
хозяин - барин.
 
fire4x
запомни, юный подован, что %appdata% в vbscript не канает по определению, ибо:
Код:
Const APPDATA = &H1a
'развернем константу
Set objShell = CreateObject("Shell.Application")
strAppData = objShell.NameSpace(APPDATA).Self.Path
 
WScript.Echo strAppData & "\123"
ну а если хочется именно %appdata%, то:
Код:
Set WSHSHell = CreateObject("WScript.Shell")
strAppData = WSHShell.ExpandEnvironmentStrings("%appdata%")
 
WScript.Echo strAppData & "\123"
допилить vbs, полагаю, сможешь самостоятельно, ведь я лишь на ошибки указал.
на счет веток... с правами админа можно.

Всего записей: 2041 | Зарегистр. 05-07-2008 | Отправлено: 14:28 08-03-2012
matvey60

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Del

Всего записей: 19 | Зарегистр. 15-07-2005 | Отправлено: 12:38 12-03-2012 | Исправлено: matvey60, 00:26 28-03-2012
Black_Lung



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
fire4x
 

Код:
 
Const HKLM = &H80000002
key="software\microsft"
 
Set r=GetObject("winmgmts:\root\default:StdRegProv")
iRC = r.EnumKey(HKLM,key,dsSubKeys)
if isarray(dsSubKeys)=-1 then
    if ubound(dsSubKeys)=0 then  
        one_sk=1
        end if
    end if    
 
if one_sk=1 then  
<действие1>
else
<действие2>
end if
 

 
matvey60
такой скрипт на vbs не сделать, думаю, на Autoit возможно

Всего записей: 275 | Зарегистр. 09-10-2008 | Отправлено: 16:24 12-03-2012
matvey60

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
такой скрипт на vbs не сделать, думаю, на Autoit возможно

Спасибо.

Всего записей: 19 | Зарегистр. 15-07-2005 | Отправлено: 22:14 12-03-2012
fire4x



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
 
Const HKLM = &H80000002  
key="software\microsft\1"  
   
Set r=GetObject("winmgmts:\root\default:StdRegProv")  
iRC = r.EnumKey(HKLM,key,dsSubKeys)  
if isarray(dsSubKeys)=-1 then  
    if ubound(dsSubKeys)=0 then  
        one_sk=1  
        end if  
    end if      
   
if one_sk=1 then  
Set Sh = CreateObject("WScript.Shell")  
Sh.Run chr(34)&"1 1.exe"&chr(34)
else  
Set Sh = CreateObject("WScript.Shell")  
Sh.Run chr(34)&"2 1.exe"&chr(34)
end if
 

Вне зависимости от количества веток выполняется второе условие
А нужно чтобы если одна ветка - то первое.
 
Добавлено:

Цитата:
Код: Set WSHSHell = CreateObject("WScript.Shell")  
 strAppData = WSHShell.ExpandEnvironmentStrings("%appdata%")  
   
 WScript.Echo strAppData & "\123"

А что дописать, чтобы папка 123 со всем содержимым удалилась.

Всего записей: 503 | Зарегистр. 25-02-2008 | Отправлено: 22:50 15-03-2012
Wilion

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как с помощью VBS решить следующую задачу. В C:\Documents and Settings\Vriten\Local Settings\Temp находиться файл, с произвольным именем и имеющий атрибут скрытый, но с расширением .tmp. Необходимо его скопировать на диск D:\Загрузки, убрать атрибут скрытый и переименовать в Setup.exe.

Всего записей: 202 | Зарегистр. 24-08-2009 | Отправлено: 11:21 16-03-2012
rte7

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
добрый день в vbs слабо разбираюсь хотелось бы дополнить мелкой деталью вот этот скрипт
 
[САМ vbs-скрипт..  
Скрипт выбирает данные из АД о юзерах - т.е. должность учётка лдап путь и так далее - ну  остальное можно потом дальше подобавлять.
Вообщем задача такова --- выводит результаты на экран,  какие строки нужно добавить в этот сркипт что бы сохранило например  весь  отчёт  в  C:\8.txt
 
Заранее буду вам признателен в помощи....
 
П.С :

Всего записей: 46 | Зарегистр. 10-11-2009 | Отправлено: 22:56 16-03-2012 | Исправлено: rte7, 23:04 16-03-2012
fire4x



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как остановить и отключить службу Windows без подтверждений?

Всего записей: 503 | Зарегистр. 25-02-2008 | Отправлено: 00:48 17-03-2012
shveicar



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Здравствуйте,  
Не безызвестная многим, программа adobe dreamweaver - может, весьма удобно, проверять сайт на наличие ссылок, результат можно увидеть в текстовом файле, вида  

Код:
Неработающие ссылки:
 
index_splash.htm    ../silginc.com/index.htm
members/220_2.htm   images/newmenu__hover_01.jpg
members/6145_221.htm   images/newmenu__hover_01.jpg
members/6145_221.htm   6145_2f-6142-01-sm.jpg
members/6145_221.htm   6145_2f-6142-01-lg.jpg
 
Внешние ссылки:
 
2257.htm   mailto:info@sexentertain.co
index_splash.htm   http://www.google.com/
 
 
Потерянные файлы:
 
images/Descr.WD3

 
естественно, каждый из списков,- может быть очень длинным, (привожу краткое содержание) но структура - всегда одинакова. Проблема заключается в дальнейшей обработки этого файла. Если возможно ускорить процесс извлечения из файла полезной информации, а именно: фрагмента после надписи (Неработающие ссылки: ) причем только начальных строк до (.htm)l и всего блока до надписи (Внешние ссылки: ) Буду очень признателен, поскольку поэтапная обработка файла, имеет несколько стадий и не удобна. Если в скрипт возможно добавить ещё и опцию удаления одинаковых строк, (сохраняется только одно совпадение) в итоговом файле вывода. Будет просто великолепно. Работаю из под total commander. Надеюсь на помощь.
Спасибо.

Всего записей: 340 | Зарегистр. 26-09-2010 | Отправлено: 14:45 25-03-2012 | Исправлено: shveicar, 14:53 25-03-2012
13071963



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Прошу Вас оказать помощь в решении следующей задачи!!! Сам VBScript не знаю.
 
==================== ОПИСАНИЕ =========================================
 
После сканирования документа имеется папка, в которой отсканированные файлы
записаны, как правило, в следующем формате:
000.tif
001.tif
002.tif
003.tif
...
112.tif и т.д.
 
Файл для обработки (очистки)загружается в Spotlight Pro по очереди, "по одному"!
 
Имеется командный файл в Spotlight, в котором прописаны необходимые действия, выполняемые автоматически, после ручной обработки.
Например:
          - Автовыравнивание страницы
          - Очистка мусора
          - Залитие дырок
          - Приведение к необходимому формату
          - ...
          - Сохранить как (в другой каталог)
          - Закрыть файл
 
=================== ЗАДАЧА ===========================================
 
  В конце командного файла необходимо выполнить команду АВТОМАТИЧЕСКОЙ загрузки  "следующего" обрабатывамого файла из указанного первоначально каталога. Например:
  загружен файл 001.tif >>Ручная обработка >> Командный файл >> загружен для обработки 002.tif и т.д. до конца.
 
  Возможно ли описать данное действие имеющейся на VBScript (или JavaScript)? ПОМОГИТЕ!

Всего записей: 14 | Зарегистр. 21-11-2007 | Отправлено: 21:39 26-03-2012
timurgall



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Доброго времени, есть вот такой скрипт
 
Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FileExists("C:\Program Files\xxx\test.txt") Then
    Set objFile = objFSO.GetFile("C:\Program Files\xxx\test.txt")
    objFile.delete
End If
 
Если запустить его локально то фаил удаляется. А через групповую политику у пользователя нет. Там где я нашел этот пример так и было написано что он для локального запуска) Только в какую сторону его доработать чтобы он был для запуска через групповые политики?

Всего записей: 94 | Зарегистр. 29-07-2008 | Отправлено: 14:08 29-03-2012
Black_Lung



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
fire4x
по реестру у меня лично работает, возможно что-то где-то у тебя не правильно. Обрати внимание что условие 2 выполняется если указанной ветки реестра не существует, можно в этом случае вводить еще условие на проверку существования ветки.
if not iRC=0 then ошибка.
 
Пример удаления папки есть в msdne, а службами можно манипулировать с помощью wmi Win32_Service.
 
rte7
проще всего перенаправить экран в файл, добавив в конец команды запуска скрипта "> C:\8.txt"
 
13071963
По данным из гугла этот софт дружит с vbs.
 
timurgall
Возможно у пользователя нет прав на удаление или на запуск скрипта, какая ошибка при выполнении через политики?
 

Всего записей: 275 | Зарегистр. 09-10-2008 | Отправлено: 12:44 30-03-2012
MatroskinK



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Функция  Hex()  в Vbs  умеет получать значения, не превышающие 2 c небольшим миллиарда. А как можно получить 16-ричное представление значительно больших чисел?  
По условиям задачи строка. содержащая 16-ричное представление должна быть длинной 12 символов.
Ауу, гуру...

Всего записей: 5 | Зарегистр. 10-12-2006 | Отправлено: 21:47 30-03-2012
fire4x



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Black_Lung

Цитата:
Пример удаления папки есть в msdne,

Можно ссылочу. Или пример удаления папки, например, %AppData%\12345

Цитата:
службами можно манипулировать с помощью wmi Win32_Service

А каким образом? Можете объяснить на примере любой службы?

Всего записей: 503 | Зарегистр. 25-02-2008 | Отправлено: 23:39 31-03-2012
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Программирование "удобняшек" на VBScript (Часть 2)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru