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

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

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

ShIvADeSt (12-07-2011 15:12): http://forum.ru-board.com/topic.cgi?forum=33&topic=11963#1  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112

   

Cegpuk



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Средствами vbs можно запускать процесс родственный только первому ядру?

Всего записей: 287 | Зарегистр. 24-01-2007 | Отправлено: 14:56 30-11-2010
dandyd

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как можно из скрипта vbs передать в звуковую карту (на колонки) тон зуковой частоты определенной частоты и длительности.
 
Проигрывать файл не предлагать - частота тона, длительность и время между посылками будет меняться в цикле, в достаточно больших пределах.
 
Нужно для подбора служебного сигнала Отбой одной очень специфичной железяки с подключенным телефонным интерфейсом.
 
Заранее спасибо

Всего записей: 171 | Зарегистр. 22-01-2006 | Отправлено: 15:56 02-12-2010 | Исправлено: dandyd, 05:34 05-12-2010
KillaJ

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Товарищи, подскажите!!!Хочю переименовать папки и чтобы новое название папки содержало ГГГГММДД файла которого я до этого копирую.
 
txtFileCreationDate и f  обьявилены в public. f - дата создания файла (f = file.DateCreated)
 

Код:
Function Rename
 
Dim fso, folderRename, path_1, path_2, path_3, path_4, path_01
set fso = createobject("Scripting.FileSystemObject")
Set folderRename = CreateObject("Scripting.FileSystemObject")
path_01 = "C:\New"
'path_02 =  
txtFileCreationDate = left(f,10)
path_3 = "C:\Yo"
path_4 = path_3 + right(txtFileCreationDate,4) & left(right(txtFileCreationDate,7),2)& left(right(txtFileCreationDate,10),2)
 
folderRename.MoveFolder path_01, path_4  
folderRename.MoveFolder "C:\1" , "C:\2"
 
 
 
if not fso.folderexists(path_1) then folderRename.MoveFolder "C:\New" , path_4
if not fso.folderexists(path_2) then folderRename.MoveFolder "C:\1" , "C:\2"  
End Function

Всего записей: 14 | Зарегистр. 01-10-2010 | Отправлено: 20:03 05-12-2010
AndVGri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KillaJ
Вот функция возвращает
Цитата:
ГГГГММДД
по переданной дате

Код:
 
Function DateToStr(thisDate)
    Dim sPart
    DateToStr = CStr(Year(thisDate))
    sPart = Month(thisDate)
    If Len(sPart) < 2 Then sPart = "0" & sPart
    DateToStr = DateToStr & sPart
    sPart = CStr(Day(thisDate))
    If Len(sPart) < 2 Then sPart = "0" & sPart
    DateToStr = DateToStr & sPart
End Function
 

Всего записей: 750 | Зарегистр. 14-12-2005 | Отправлено: 03:06 06-12-2010
KillaJ

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AndVGri
Как сделать дату ГГГГММДД я знаю.Не могу понять почему не получается ГГГГММДД прибавить к названию папки которую переименовываю.
То  есть у меня есть папка "C:\Yo" а я хочю ее переименовать в "C:\Yo ГГГГММДД"(и чтобы обязательно был пробел между названием папки и датой).
 
Вот как я делаю и не получается:
 

Код:
path_01 = "C:\New"  
txtFileCreationDate = left(f,10)  
path_3 = "C:\Yo"  
path_4 = path_3 + right(txtFileCreationDate,4) & left(right(txtFileCreationDate,7),2)& left(right(txtFileCreationDate,10),2)  
 
folderRename.MoveFolder path_01, path_4  

 

Всего записей: 14 | Зарегистр. 01-10-2010 | Отправлено: 20:04 06-12-2010 | Исправлено: KillaJ, 20:29 06-12-2010
Rush

Уже за тридцать...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KillaJ

Цитата:
path_4 = path_3 + right(txtFileCreationDate,4) & left(right(txtFileCreationDate,7),2)& left(right(txtFileCreationDate,10),2)  

Ты все также продолжаешь упорствовать в этой дурацкой конструкции?
Ведь еще месяц назад сказано было:

Цитата:
left(right(t,7),2) & left(right(t,10),2) - это, вообще, что-то.  Нужно было просто: mid(t,4,2) & left(t,2)

Чтобы задать пробел, его надо обозначить.  

Код:
path_4 = path_3 & " " &

Всего записей: 3551 | Зарегистр. 20-11-2003 | Отправлено: 00:56 07-12-2010
Rush

Уже за тридцать...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
То  есть у меня есть папка "C:\Yo" а я хочю ее переименовать в "C:\Yo ГГГГММДД"

Кстати, почему тогда ты переименовываешь не папку "C:\Yo", а какую-то папку "C:\New"?

Всего записей: 3551 | Зарегистр. 20-11-2003 | Отправлено: 13:21 07-12-2010
KillaJ

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день, Rush!
 

Код:
Ты все также продолжаешь упорствовать в этой дурацкой конструкции?  

Да пока пользуесь своей), но помню что можно усовершенствовать)))
 

Цитата:
То  есть у меня есть папка "C:\Yo" а я хочю ее переименовать в "C:\Yo ГГГГММДД"  

Это я к примеру написал.
 

Цитата:
Кстати, почему тогда ты переименовываешь не папку "C:\Yo", а какую-то папку "C:\New"?

На самом деле я хочу переименовать "C:\New" в "C:\Yo(пробел)ГГГГММДД" .В моем тексте программы видимо что-то не так, потому что у меня переименовывает просто в "C:\Yo"
 

Цитата:
path_4 = path_3 & " " &

С амперсандом ставил все равно переименовывает просто в "C:\Yo"

Всего записей: 14 | Зарегистр. 01-10-2010 | Отправлено: 15:52 07-12-2010 | Исправлено: KillaJ, 18:20 08-12-2010
magiogre



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте! Помогите написать скрипт для бэкапа =)
 
Имеется сетевая папка на сервере Windows и сетевое хранилище NAS.
Нужен скрипт, который будет запускаться планировщиком Windows и копировать эту папку (и всё её содержимое) на NAS по следующему алгоритму:
 
1. Монтируем сетевой диск:
Dim net
Set net = CreateObject("Wscript.Network")
net.MapNetworkDrive "L:","\\192.168.1.20\backup", "true", "login", "password"
 
2. Ждём:
WScript.Sleep(30000)
 
3. Копируем с заменой:
???
 
4. Отключаем сетевой диск:
net.RemoveNetworkDrive "L:","true", "true"
 
Также было бы не плохо усложнить задачу (если это возможно реализовать средствами VBS).
Перед началом выполнения предыдущей задачи, проверить, имеются ли пользователи, работающие с исходной папкой, её подпапками, вложенными в папку и подпапки файлами. Если такие пользователи есть, то:
-В первом случае, прекращаем дальнейшую работу скрипта,
-А во втором случае, отключаем ("кикаем") их всех и выполнить скрипт с п1.
 
Заранее благодарствую=)

Всего записей: 104 | Зарегистр. 26-01-2009 | Отправлено: 16:37 09-12-2010
AndVGri

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

Цитата:
Как сделать дату ГГГГММДД я знаю.Не могу понять почему не получается ГГГГММДД прибавить к названию папки которую переименовываю.

Ну так и переименовывай

Код:
 
Dim fso, pFolder
Set fso = WScript.CreateObject("Scripting.FileSystemObject")
If fso.FolderExists("C:\needFolder") Then
    Set pFolder = fso.GetFolder("c:\needFolder")
    pFolder.Name = pFolder.Name & " " & DateToStr(Now)
End If
 

Всего записей: 750 | Зарегистр. 14-12-2005 | Отправлено: 03:03 10-12-2010
adminchik2010

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день!  
Помогите написать скрипт который:  
1)Запускает приложение.  
2)Поочередно открывает каждый элемент его проводника в отдельном окне(стать левой клавишей мыши на элемент проводника, после нажать правую клавишу и выбрать "Open in new window")  
Вот начало:  
 
Dim WS  
Set WS = WScript.CreateObject("WScript.Shell")  
WS.run chr(34)+"C:\Program Files\System Center Operations Manager 2007\Microsoft.MOM.UI.Console.exe"+chr(34)  
WshShell.SendKeys("My Workspace")  
 
Заранее спасибо!

Всего записей: 6 | Зарегистр. 17-11-2010 | Отправлено: 11:22 13-12-2010
quakerock



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
adminchik2010
 
Сходи сюда Autoit3 с горячими клавишами и с работой окон, это больше подойдет имхо.
 
 

Всего записей: 29 | Зарегистр. 08-07-2009 | Отправлено: 13:52 13-12-2010
adminchik2010

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

Всего записей: 6 | Зарегистр. 17-11-2010 | Отправлено: 15:04 13-12-2010
XMMS



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Есть задача: в текстовом файле в начале каждой строки удалить два символа, сократив её таким образом. Проблема в том, что не понятно на чём это писать(не умею, пытался разобраться с VBS - но что-то пока никак), и второе - в середине строки есть ещё один символ перевода, который не понимает Notepad, но зато понимают более продвинутые текстовые редакторы.
VBS для такой задачи подойдёт?

Всего записей: 2603 | Зарегистр. 14-01-2003 | Отправлено: 12:29 14-12-2010
Rush

Уже за тридцать...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
XMMS

Цитата:
VBS для такой задачи подойдёт?

Подойдет.  

Цитата:
в середине строки есть ещё один символ перевода, который не понимает Notepad, но зато понимают более продвинутые текстовые редакторы.

Видимо, или юниксовый - из одного символа chr(10), или маковский - chr(13).

Код:
Option Explicit
 
Dim fso
Dim FileName
Dim TextFile
Dim Text
 
FileName = "x:\file.ext"  ' Заменить на свой файл
 
Set fso = WScript.CreateObject("Scripting.FileSystemObject")
Set TextFile = fso.OpenTextFile(FileName)
  Text = TextFile.ReadAll
TextFile.Close
 
Text = ReplaceText(Mid(Text, 3), "\r\n.{2}", VbCrLf)
Text = ReplaceText(Text, "([^\r])\n*", "$1")
Text = ReplaceText(Text, "\r*([^\n])", "$1")
 
Set TextFile = fso.OpenTextFile(FileName, 2)
  TextFile.Write Text
TextFile.Close
 
Function ReplaceText(Txt, Mask, Out)
  Dim RegExp
    Set RegExp = WScript.CreateObject("VBScript.RegExp")
    RegExp.Pattern = Mask
    RegExp.Global = True
    ReplaceText = RegExp.Replace(Txt, Out)
    Set RegExp = Nothing
End Function

 
Добавлено:
ps. Я сделал удаление этих переводов строк -
Цитата:
в середине строки есть ещё один символ перевода

Или не надо?

Всего записей: 3551 | Зарегистр. 20-11-2003 | Отправлено: 14:07 14-12-2010
XMMS



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Rush
Огромное вам спасибо! То что нужно.

Всего записей: 2603 | Зарегистр. 14-01-2003 | Отправлено: 15:24 14-12-2010
Demon L



Lite FSB
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Народ помогите, пожалуйста, решить задачку...
Есть папка (D:\TEST) в нее падают файлики *.tiff
Требуется каждый попавший туда файлик отправить по Email вложением. А сам файл после этого переместить в другую папку, например D:\OUT
Как сие сделать помогите…

Всего записей: 375 | Зарегистр. 24-07-2003 | Отправлено: 00:47 15-12-2010
AndVGri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Demon L
Получение списка файлов в папке Test и выборка *.tiff

Код:
 
Dim pShell, pFolder, pItems
 
Set pShell = CreateObject("Shell.Application")
Set pFolder = pShell.NameSpace("d:\test")
Set pItems = pFolder.Items
pItems.filter 64, "*.tiff"
 

Отправка файла по e-mail

Код:
 
Dim pSend
Set pSend = CreateObject("CDO.Message")
pSend.Subject = "Заголовок сообщения"
pSend.TextBody = "Текст сообщения"
pSend.From = "from@mail.ru"
pSend.To = "to@mail.ru"
pSend.AddAttachment "d:\test\file.tiff"
pSend.Send
 

перемещение файла

Код:
 
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
fso.MoveFile "d:\test\file.tiff", "d:\out\file.tiff"
 

Всего записей: 750 | Зарегистр. 14-12-2005 | Отправлено: 05:41 15-12-2010
Demon L



Lite FSB
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AndVGri
 
Спасибо!
Только не пойму а куда тут вписывать даные через что отправлять (smtp логин пароль) ?
 
И пишет:
Недопустимое значение конфигурации "SendUsing"
код: 80040220
Источник: CDO.Message.1
 
Тоесть не работает.

Всего записей: 375 | Зарегистр. 24-07-2003 | Отправлено: 11:43 15-12-2010 | Исправлено: Demon L, 11:55 15-12-2010
quakerock



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Rush
 
Text = ReplaceText(Mid(Text, 3), "\r\n.{2}", VbCrLf)
Text = ReplaceText(Text, "([^\r])\n*", "$1")
Text = ReplaceText(Text, "\r*([^\n])", "$1")
 
Разжуй, если не сложно, что это? (интересует то что в скобках)

Всего записей: 29 | Зарегистр. 08-07-2009 | Отправлено: 12:46 15-12-2010
   

Страницы: 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 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Программирование "удобняшек" на VBScript
ShIvADeSt (12-07-2011 15:12): http://forum.ru-board.com/topic.cgi?forum=33&topic=11963#1


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru