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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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

   

smirnvlad

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

Всего записей: 417 | Зарегистр. 31-03-2009 | Отправлено: 21:23 17-10-2010
Mushroomer



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Просьба посмотреть скрипт Подробнее...
 
Скрипт взят из сообщения http://forum.dwg.ru/showpost.php?p=326749&postcount=30
и борется протиив вируса в AutoCAD.
Проблема: в Windows 7 32 бит выдает ошибку: неверный символ или аргумент (пишу по памяти) в строке 17, позиция 8.

Всего записей: 22839 | Зарегистр. 19-01-2002 | Отправлено: 07:37 18-10-2010 | Исправлено: Mushroomer, 07:38 18-10-2010
as lan112233

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
И еще такой вопрос. Немного нубское построение будет, но попытаюсь объяснить как могу.  
Допустим скрипт при выполнении должен сравнить два случая. (в итоге даст "правда" или "ложь"). Только могут быть случаи когда одно сравнение даст нам "правда" а другое "ложь" и наоборот. Так вот, как сделать так чтоб было следующим образом правда*правда=правда, ложь*правда=правда, правда*ложь=правда, ложь*ложь=ложь. Просто решил переделать скрипт и столкнулся с такой проблемой
 
Вопрос снят!

Всего записей: 5 | Зарегистр. 17-10-2010 | Отправлено: 17:17 18-10-2010 | Исправлено: as lan112233, 17:21 18-10-2010
sLap



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Нихао!
И вот назрела необходимость в неком vbs-скрипте...
 
1. Открывается форма с возможностью выбора юзернэйма из списка всех существующих на компе профилей (откуда будет правильнее брать - хз, предполагаю что из названий папок в documents and settings или же из [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList], но самих юзернэймов там нет)
Если ничего не получится оставляем ручной ввод.
 
2. Дадее выбранный (введеный) юзернэйм пишется сюда:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"DefaultUserName"="Pupkin"
 
3. СЧАСТЬЕ! все танцуют и йодлят!

Всего записей: 214 | Зарегистр. 31-05-2002 | Отправлено: 12:06 19-10-2010
KillaJ

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день!Мне нужен скрипт, чтобы копировал все файлы с заданным разрешением в другую папку.Подскажите пож-та!!
 
Вот скрипт, который работает(копирует данные на рабочем столе).Если я меняю в path_source "Desktop" на "C:\Folder1", а path_dest "Desktop" на "C:\Folder2" то пишет ошибку.
 
 

Код:
set fso = createobject("Scripting.FileSystemObject")
set shell = WScript.CreateObject("WScript.Shell")
path_source = shell.specialfolders("Desktop")
path_dest = shell.specialfolders("Desktop") & "\RADIO"
ext = "m3u"
if not fso.folderexists(path_dest) then fso.createfolder(path_dest)
for each file in fso.getfolder(path_source).files
  if fso.getextensionname(file) = ext then fso.copyfile file, path_dest & "\" & fso.getfilename(file)
next

Всего записей: 14 | Зарегистр. 01-10-2010 | Отправлено: 11:26 26-10-2010
smirnvlad

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KillaJ
менять надо не только "Desktop", а всю строку
path_source = "C:\Folder1"
path_dest = "C:\Folder2" & "\RADIO"

Всего записей: 417 | Зарегистр. 31-03-2009 | Отправлено: 12:44 26-10-2010
KillaJ

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

Всего записей: 14 | Зарегистр. 01-10-2010 | Отправлено: 16:48 27-10-2010
Wu Tang



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

Код:
On Error Resume Next
 
Set WshShell = WScript.CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
 
WinRar = WshShell.ExpandEnvironmentStrings("%ProgramFiles%\Winrar")
 
WshShell.CurrentDirectory = WinRar
 
WshShell.Run "start /min  winrar.exe", 0
 
Wscript.Sleep 2000 'в мс.
 
WshShell.Run "taskkill /f /im winrar.exe", 0


----------
Всему свое время и каждому свой час!
Хочешь жить - умей вертеться!

Всего записей: 3773 | Зарегистр. 15-10-2007 | Отправлено: 19:50 27-10-2010
smirnvlad

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

Цитата:
Подскажите, где ошибка?


Цитата:
WshShell.Run "start /min  winrar.exe", 0  


Код:
 
cmd = WshShell.ExpandEnvironmentStrings("%ComSpec%")
WshShell.Run cmd & " /c start /min  winrar.exe", 0
 

Всего записей: 417 | Зарегистр. 31-03-2009 | Отправлено: 20:02 27-10-2010
Wu Tang



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
smirnvlad
Запускается не свернутым:

Код:
On Error Resume Next
 
Set WshShell = WScript.CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
 
cmd = WshShell.ExpandEnvironmentStrings("%ComSpec%")  
 
WshShell.Run cmd & " /c start /min  winrar.exe", 0
 
Wscript.Sleep 2000 'в мс.
 
WshShell.Run "taskkill /f /im winrar.exe", 0


----------
Всему свое время и каждому свой час!
Хочешь жить - умей вертеться!

Всего записей: 3773 | Зарегистр. 15-10-2007 | Отправлено: 21:38 27-10-2010
smirnvlad

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Wu Tang
можно попробовать  
WshShell.Run "winrar.exe", 2  
или
WshShell.Run "winrar.exe", 7
но второй winrar всегда запускается не свернутым, видимо особенность winrar

Всего записей: 417 | Зарегистр. 31-03-2009 | Отправлено: 22:08 27-10-2010
Wu Tang



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
smirnvlad
Попробовал другой способ - запускать cmd из под vbs, тогда и консоль не мелькает...

----------
Всему свое время и каждому свой час!
Хочешь жить - умей вертеться!

Всего записей: 3773 | Зарегистр. 15-10-2007 | Отправлено: 22:58 27-10-2010
UR3LPP

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всем привет!
Столкнулся с такой проблемой. Нужен скрипт для такой задачи.
Есть корпоративная сеть. Есть сервер в офисе и другие структурные подразделения в других городах района. так вот: при запуске скрипта в структурном подразделении, нужно с сервера \\server\folder скачать все файлы в папку \\computer\folder. При этом нужно сравнить содержимое скачиваемого файла ENTERP.ini(в каждой строчке отдельный клиент - новые клиенты появляются в конце файла) c тем, который уже есть на компьютере в папке \\computer\folder и в окне вывести список новых клиентов и при нажатии на кнопку ОК зайти в определённую программу. А если обновлений нет, то ты вести окно, что обновлений не обнаружено.
 
Сам в скриптах не силён (начал только изучать), а скриптик очень сильно нужен.
 
Заранее всем благодарю!

Всего записей: 1 | Зарегистр. 27-10-2010 | Отправлено: 00:48 28-10-2010 | Исправлено: UR3LPP, 01:17 28-10-2010
WolfyCub

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
есть задача : с помощью скрипта считать текущего пользователя (в основном група "user") в winxp и в его правах убрать галки "запретить смену пароля" и "срок действия пароля неограничен" и поставить галку "Потребовать смену пароля ...."  видел похожие решения типа :
 
Set usr = GetObject("WinNT://./TEST,user")
usr.PasswordExpired = 1
usr.SetInfo
 
 но в этом случае явно указан пользователь и прежде снять нуна галки , что бы поставить "Потребовать смену пароля" ....
 
помогите плизззз ^_^

Всего записей: 1 | Зарегистр. 29-10-2010 | Отправлено: 12:46 29-10-2010
KillaJ

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день еще раз! Я хочю сделать так, чтобы в папке из которой копирую файлы, брать дату создания файла и переносить в созданную папку имя которой дата создания файла в формате YYYYMMDD.Подскажите пож-та!
 
 
Это исходный код.

Код:
set fso = createobject("Scripting.FileSystemObject")  
set shell = WScript.CreateObject("WScript.Shell")  
path_source = shell.specialfolders("Desktop")  
path_dest = shell.specialfolders("Desktop") & "\RADIO"  
ext = "m3u"  
if not fso.folderexists(path_dest) then fso.createfolder(path_dest)  
for each file in fso.getfolder(path_source).files  
  if fso.getextensionname(file) = ext then fso.copyfile file, path_dest & "\" & fso.getfilename(file)  
next

 
Здесь я попытался сделать, но пока не получается
 

Код:
set fso = createobject("Scripting.FileSystemObject")
set shell = WScript.CreateObject("WScript.Shell")
path_1 = "C:\Folder1"
path_2 = "c:\VB\" & "\MyFolder"
ext = "txt"
 
if not fso.folderexists(path_2) then fso.createfolder(path_2)
for each file in fso.getfolder(path_1).files
   
  f1 = file.DateCreated  
  Set f2 = FSO.GetFolder("Новая папка")
  'Set f3 = file.DateCreated  
  Set f2.Name = f1
  'folder1.name = f1
  'fso.createfolder1(path_2)
  'path_3 = "c:\VB\" & f2.name
  if fso.getextensionname(file) = ext then fso.copyfile file, path_2 & "\" & fso.getfilename(file)
next

Всего записей: 14 | Зарегистр. 01-10-2010 | Отправлено: 14:58 30-10-2010
zavulonx

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
день добрый, столкнулся с проблемой, необходим скрипт эмитирующий нажатие сочетания клавиш win+L  
, если данный скрипт где то уже был прошу прощения и ссылку на него если нет то прошу  помочь в его реализации,почему то не смог найти как такое сделать заранее благодарен.

Всего записей: 1 | Зарегистр. 31-10-2010 | Отправлено: 16:00 31-10-2010
Rush

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

Цитата:
Я хочю сделать так, чтобы в папке из которой копирую файлы, брать дату создания файла и переносить в созданную папку имя которой дата создания файла в формате YYYYMMDD.


Код:
 
Option Explicit
 
Dim fso, path_1, path_2, ext, file, f, yyyy, mm, dd, path_dest
 
path_1 = "C:\Folder1"  
path_2 = "c:\VB\MyFolder"  
ext = "txt"
 
Set fso = CreateObject("Scripting.FileSystemObject")
CreateDir path_2
 
For Each file In fso.GetFolder(path_1).Files
  If fso.GetExtensionName(file) = ext Then
    f = file.DateCreated
    yyyy = Year(f)
    mm = Month(f)
    dd = Day(f)
    path_dest = path_2 & "\" & yyyy & _
                String(2 - Len(mm), "0") & mm & _
                String(2 - Len(dd), "0") & dd & "\"
    If Not fso.FolderExists(path_dest) Then _
       fso.CreateFolder path_dest
    fso.CopyFile file, path_dest & fso.getfilename(file)
  End If  
Next
 
Sub CreateDir(strPath)
  Dim DirArray, strRoot, i, strTree
    DirArray = Split(strPath, "\")
    strRoot = Dirarray(0) & "\"
    For i = 1 To UBound(DirArray)
      strTree = strTree & DirArray(i) & "\"
      If Not fso.FolderExists(strRoot & strTree) Then _
         fso.CreateFolder strRoot & strTree
    Next
End Sub
 

Всего записей: 3551 | Зарегистр. 20-11-2003 | Отправлено: 17:44 01-11-2010
bygamer



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

Цитата:
день добрый, столкнулся с проблемой, необходим скрипт эмитирующий нажатие сочетания клавиш win+L

 
Rundll32.exe User32.dll,LockWorkStation

Всего записей: 69 | Зарегистр. 12-07-2006 | Отправлено: 10:01 04-11-2010
KillaJ

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Rush, спасибо!Но я уже написал свой.
 
Вот, если кому пригодится.
 

Код:
Option Explicit
 
Dim t, n, ext, path_1, path_2, path_3, info, fso, shell, f, file
 
set fso = createobject("Scripting.FileSystemObject")
set shell = WScript.CreateObject("WScript.Shell")
path_1 = "C:\Folder1"
path_2 = "c:\VB\"
ext = "txt"
n=0
if not fso.folderexists(path_2) then fso.createfolder(path_2)
for each file in fso.getfolder(path_1).files
    f = file.DateCreated
 
    n=n+1
'info = "Файл " & WScript.ScriptName & " :" & Chr(10)  
'info = info & "Создан: " & f & Chr(10)
info = "Количество отчетов: " & n & Chr(10)
t = left(f,10)
path_3 = path_2+right(t,4) & left(right(t,7),2) & left(right(t,10),2)
 
if not fso.folderexists(path_3) then fso.createfolder(path_3)
 
 
  if fso.getextensionname(file) = ext then fso.movefile file, path_3 & "\" & fso.getfilename(file)
   
next
 
Msgbox info


Всего записей: 14 | Зарегистр. 01-10-2010 | Отправлено: 20:25 08-11-2010
Rush

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

Цитата:
Вот, если кому пригодится.

1) set shell = WScript.CreateObject("WScript.Shell") совершенно лишнее - объект у тебя не используется.
2) Зачем обрабатывать все файлы - тебе ведь надо только с расширением txt?
3) info = "Количество отчетов: " & n & Chr(10) - здесь у тебя будет не количество отчетов, а количество файлов в папке. И написать это надо было не в цикле, а после. И новая строка там ни к чему.
4) left(right(t,7),2) & left(right(t,10),2) - это, вообще, что-то. Нужно было просто: mid(t,4,2) & left(t,2)
5) Закомментированные строки совершенно не относятся к скрипту, зачем они там?
 
Рановато тебе еще рекомендовать свои скрипты к использованию - надо бы самому в них понимать как они работают. Без обид, я по дружески.

Всего записей: 3551 | Зарегистр. 20-11-2003 | Отправлено: 17:51 09-11-2010 | Исправлено: Rush, 17:55 09-11-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