Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Программирование "удобняшек" на VBScript

Автор: Accessor
Дата сообщения: 12.01.2011 10:11
htgrfrbn
Сделай себе отдельный раздел. Можно даже скрытый. И не морочь людям голову.
Автор: bomzzz
Дата сообщения: 12.01.2011 10:32
htgrfrbn
свои фото без трусов можешь заархивировать в архив с паролем, или использовать кодирующую файлы программы какую нибудь Ashampoo WinOptimizer Platinum Suite 2
Автор: htgrfrbn
Дата сообщения: 12.01.2011 11:40
bomzzz
мои фото в трусах ))) без трусов там другие люди )))))))
мне казалось гораздо проче и удобнее скриптом воспользоваться... ладно.. не хотите помогать- не надо.
Автор: bomzzz
Дата сообщения: 12.01.2011 12:24
в рар архив с паролем запаковать куда уж проще.

Добавлено:
Free_Soft
получается окошко???
Автор: Rush
Дата сообщения: 12.01.2011 16:54
htgrfrbn

Цитата:
мне казалось гораздо проче и удобнее скриптом воспользоваться... ладно.. не хотите помогать- не надо.

Ну не сказать что проще.
Что ж обижаться-то сразу - поможем.

Код: Option Explicit

If WScript.Arguments.Count = 1 Then
XorBytes WScript.Arguments.Item(0)
End If

WScript.Quit 0

Sub XorBytes(FileName)
Dim InStream
Dim OutStream
Dim bLen
Dim n
Set InStream = CreateObject("ADODB.Stream")
InStream.Type = 1
InStream.Open
Set OutStream = CreateObject("ADODB.Stream")
OutStream.Type = 1
OutStream.Open
InStream.LoadFromFile(FileName)
bLen = InStream.Size
If bLen > 1024 Then bLen = 1024
For n = 0 To bLen - 1
InStream.Position = n
OutStream.Write ToByte(InStream.Read(1))
Next
InStream.CopyTo(OutStream)
InStream.Close
Set InStream = Nothing
OutStream.SaveToFile FileName, 2
OutStream.Close
Set OutStream = Nothing
End Sub

Function ToByte(nByte)
Dim RecSet
Set RecSet = CreateObject("ADODB.Recordset")
RecSet.Fields.Append "a", 205, 1
RecSet.Open
RecSet.AddNew
RecSet("a").AppendChunk ChrB(AscB(nByte) Xor 127) & ChrB(0)
RecSet.Update
ToByte = RecSet("a").GetChunk(1)
End Function
Автор: ComradG
Дата сообщения: 12.01.2011 20:53
Free_Soft
посмотрел, как и обещал. хочешь совет, то, не стоит все слишком усложнять, когда все можно сделать гораздо проще. про элементы управления, пожалуй, я останусь при своем мнении: лучше использовать vbscript и hta в связке, тем паче, что таким макаром можно считывать данные из инишек и визуальное представление будет.
Автор: htgrfrbn
Дата сообщения: 12.01.2011 21:21
to Rush огомный респект!!! всё классно работает!
конечно я думал, что можно сделать так, чтобы скрипт просто перебирал все файлы из директории в которой сам находиться... чтобы не заморачиваться с командной строкой... хотя в Total Commander`е всё быстро и удобно реализуется.
Спасибо, Rush!
Автор: bomzzz
Дата сообщения: 13.01.2011 09:57
фрисофтик щас окошек понаделает и загорится какой нибудь язык учить. на эти окошки все покупаются.

возможно стоит учить Делфи - он считается особо простым что ли. с другой стороны если углубиться , потом придется еще и другой язык учить, и этой дельфятиной только стиль себе ломать. поэтому может сразу лучше Си долбить. с другой стороны я сам пару раз начинал про этот Си читать, но там логика совсем другая , не такая дремучая как у меня может, и чета у меня к нему душа не легла совсем.
Даунлоад Мастер написан на делфи вроде.

Добавлено:
наверно если в школе преподавали паскаль - то лучше си учить, а если бейсик, то лучше ассемблер - на мой взгляд вот так вот
Автор: sshok
Дата сообщения: 14.01.2011 15:23
где можно узнать про скрипты для чего они и как запускать?
Автор: AntoshAReal
Дата сообщения: 19.01.2011 05:31
Приветствую!
Прошу помочь, есть скрипт на vbs, необходимо выделить из строки с текстом первые буквы слов и поставить разделители в виде точек, например:
"Иванов Иван Иванович", надо получить эти инициалы, "И.И.И."

Данный текст представлен в виде переменной.
Автор: Olegstanislavvich
Дата сообщения: 19.01.2011 09:04
При запуске игнорирует ползунок громкости и начинает играть на полной громкости, даже если ползунок почти на нуле. Стоит только щелкнуть по ползунку как громкость становится на свой уровень согласно его позиции...

Помогите написать файлик программу или скрипт который принудительно устанавливает громкость при запуске?

Программа должна выполнять следующее:

K:\Audio\Winamp\winamp.exe
~down=Msg|Winamp v1.x|273|40059


Код:
Dim Winamp
Winamp = "k:\Audio\Winamp\winamp.exe" 'Путь к Winamp-у
'Var WH: HWND

Private Const WM_Lower_Volume = 40059

Set WS = CreateObject("WScript.Shell")

WS.run Winamp

'WinampHWND=findwindow("Winamp v1.x",nil)
n=SendMessage(WinampHWND, 40059, Command, 0)
Автор: AndVGri
Дата сообщения: 19.01.2011 09:10
AntoshAReal

Код:
Function FIO(ByVal this)
Dim subs
subs = Split(this, " ")
If UBound(subs) <> 2 Then
FIO = this
Else
FIO = Mid(subs(0), 1, 1) & "." & Mid(subs(1), 1, 1) & "." & Mid(subs(2), 1, 1) & "."
End If
End Function
Автор: AntoshAReal
Дата сообщения: 19.01.2011 14:43
AndVGri
Спасибо, помогло.
Автор: quakerock
Дата сообщения: 21.01.2011 09:45

Код: fo= "D:\"
Set FSO = CreateObject("Scripting.FileSystemObject")
Set f= FSO.GetFolder(fo)
set sf = f.SubFolders
For Each f1 In sf
if FormatDateTime(f1.DateCreated, 4) =<> ??? then
WScript.Echo f1.name & " Создано 2 минуты назад"
end if
Next
' "???" что нужно сделать, что бы сравнивалось время создания каталога с текущим
'временем и если есть каталоги созданные 2 минуты назад, то выдать сообщение?
'Или я что-то не так делаю?
Автор: AndVGri
Дата сообщения: 21.01.2011 10:01
quakerock

Код:
Dim difTime
difTime = TimeSerial(0, 2, 0)
If (Now - f1.DateCreated) > difTime Then
WScript.Echo f1.name & " Создано более 2 минут назад"
End If
Автор: quakerock
Дата сообщения: 21.01.2011 10:08
AndVGri

Большое спасибо.

Добавлено:
Dim difTime
difTime = TimeSerial(0, 2, 0)
fo= "D:\"
Set FSO = CreateObject("Scripting.FileSystemObject")
Set f= FSO.GetFolder(fo)
set sf = f.SubFolders
For Each f1 In sf
If (Now - f1.DateCreated) < difTime Then
Mg = Mg & f1.name
Mg = Mg & vbCrLf
End If
Next
MsgBox Mg


Если папки созданые менее 2 мин назад отсутствуют, то выходит пустое сообщение
Как сделать, что бы сообщение выходило только тогда, когда папки есть, а когда их нет, то WScript.Quit ?

Добавлено:
Dim difTime
difTime = TimeSerial(0, 5, 0)
fo= "D:\"
Set FSO = CreateObject("Scripting.FileSystemObject")
compare_date=false
Set f= FSO.GetFolder(fo)
set sf = f.SubFolders
For Each f1 In sf
If (Now - f1.DateCreated) < difTime Then
Tx = Tx & f1.name
Tx = Tx & vbCrLf
compare_date=true
End If
Next
If compare_date=true then
MsgBox Tx,, "За последние 5 минут"
Else
WScript.Quit
End If

В итоге работает вот так...

AndVGri
Еще раз огромное спасибо.
Автор: quakerock
Дата сообщения: 24.01.2011 15:04
Продложая...

Возможно ли... продолжая скрипт выше, сделать так, когда msgbox выводит сообщения, то названия папок были еще и ссылками? т.е. вышло сообщение, кликнул по названию, открылась папка в проводник, totalCommander?
Автор: Evgeny972
Дата сообщения: 24.01.2011 18:27
Вопрос к знатокам:
Как определить какой входной язык сейчас выбран на клаве?
Автор: ComradG
Дата сообщения: 24.01.2011 20:45
quakerock
если ты имеешь в виду что-то вроде гиперссылок, то можно.

Evgeny972
не уверен что это возможно, но попробую чего-нибудь соорудить.
Автор: quakerock
Дата сообщения: 25.01.2011 08:16

Цитата:
ComradG
если ты имеешь в виду что-то вроде гиперссылок, то можно.


Можно показать метод/пример?
Автор: AndVGri
Дата сообщения: 25.01.2011 10:13
quakerock
Вот ты и добрался до файлов hta
[more]

Код:
<html>
<head>
<title>RefMsgBox</title>
<HTA:APPLICATION
APPLICATIONNAME="RefMsgBox"
ID="RefMsgBox"
VERSION="1.0"
BORDER="dialog"
INNERBORDER="no"
MAXIMIZEBUTTON="no"
MINIMIZEBUTTON="no"
ICON="refMsg.ico"
SCROLL="no"/>
</head>

<script language="VBScript">
Sub Window_OnLoad
    self.ResizeTo 280, 106
    self.MoveTo (screen.AvailWidth-263)/2,(screen.AvailHeight-106)/2
End Sub
Sub OnClickButtonYes()
MsgBox "Кнопка Да", vbOKOnly Or vbInformation, "Событие"
End Sub

Sub OnClickButtonNo()
MsgBox "Кнопка Нет", vbOKOnly Or vbInformation, "Событие"
End Sub

Sub OnClickButtonCancel()
window.Close
End Sub

Sub OnUrl(path)
    Dim pShell
    Set pShell = CreateObject("Shell.Application")
    pShell.Explore path
End Sub
</script>

<body bgcolor="buttonface">
<a href="#" onclick = "OnUrl me.name" name="c:\" style = "position: absolute; left: 17px; top: 1px">раскрыть диск С</a>
<a href="#" onclick = "OnUrl me.name" name="d:\" style = "position: absolute; left: 17px; top: 20px">раскрыть диск D</a>
<input type="button" style="position: absolute; width: 75px; left: 175px; top: 45px" name="btCancel" id="btCancel" value="Отмена" onclick="OnClickButtonCancel">
<input type="button" style="position: absolute; width: 75px; left: 14px; top: 45px" name="btYes" id="btOk" value="Да" onclick="OnClickButtonYes">
<input type="button" style="position: absolute; width: 75px; left: 95px; top: 45px" name="btNo" id="btNo" value="Нет" onclick="OnClickButtonNo">
</body>
</html>
Автор: quakerock
Дата сообщения: 25.01.2011 10:34

Цитата:
AndVGri
Если скрипт выполняется долго, то нужно учитывать с чем сравниваем 5 минут, c началом
выполнения или от каждого обращения к Now?

Отрабатывается все быстро.


Цитата:
Вот ты и добрался до файлов hta

Есть (.mht) документация где-нибудь?
Автор: AndVGri
Дата сообщения: 26.01.2011 02:25
quakerock
Посмотри на Сером форуме, там, кстати, достаточно много приведено примеров;
MSDN
Сам же для таких случаев, как в твоей задаче, предпочту уже Visual basic Express .Net. Напрмер, для твоей задачи отслеживания изменений в некотором каталоге достаточно настроить FileSystemWatcher и обрабатывать его события
Автор: ChiStiK_XaSeR
Дата сообщения: 26.01.2011 15:51
Всем привет, я тут новичок, помогите мне с моей задачей:
У меня должны быть три скрипта:
1 скрипт просто копирует два других и еще некоторые файлы в определенную папку,
2 скрипт откладывает запуск 3 скрипта на 4 дня
3 скрипт должен содержать команды для командной строки(как это реализовать?), и после их выполнения выводить определенный текст и запустить другой файл
Кто знает как это можно сделать напишите...
Автор: DimonKurchev
Дата сообщения: 26.01.2011 17:23
Здравствуйте, помогите пожалуйста мне написать скрипт, или подскажите решение

1. есть папка с файлом fail.pdf

нужен скрипт, при запуске которого в аутлоке создавалость и открывалось письмо (НО НЕ ОТПРАВЛЯЛОСЬ) с вложением fail.pdf и заполненной темой (константа в скрипте) и заполненными адресами (константа)

я бы его посмотрел и отправил

Зараннее спасибо
Автор: quakerock
Дата сообщения: 27.01.2011 07:29
AndVGri

Спасибо за ссылочки.
Автор: BullVinkL
Дата сообщения: 27.01.2011 15:46
Столкнулся с проблемой сохранения из xls в csv с разделителем "точка с запятой"

Код:
...
Set objWorkSheet4 = objWorkBook.Sheets.Item(4)
objWorkSheet4.SaveAs("D:\vbs\result.csv"), 6
...
Автор: cambit
Дата сообщения: 31.01.2011 12:00
Уважаемые Знатоки, не могли бы Вы помочь написать vbs скрипт, который бы запускал на воспроизведение аудиофайл проигрывателем (например light alloy) и выдавал mesagebox c некоторым текстом и кнопкой "Отмена", при нажатии на которую производилось закрытие плеера. А если кнопка не нажималась, то этот mesagebox исчез бы сам после закрытия плеера вручную.
Автор: ComradG
Дата сообщения: 31.01.2011 13:49
cambit
любым? ты б лучше написал какой формат аудио то. wav'ки можно и так воспроизвести:
Код: Set objShell = CreateObject("WScript.Shell")

strSound = "C:\WINDOWS\Media\ding.wav"
strAbout = "Файл:" & Chr(10) & strSound
strCommand = "sndrec32 /play /close " & Chr(34) & strSound & Chr(34)

objShell.Run strCommand, 0, False
WScript.Sleep 1000

MsgBox strAbout, 32, "Дарова!!!"
Автор: cambit
Дата сообщения: 31.01.2011 14:59
Да,в том то и дело, что не wav, а АС3... И скорее всего надо Ligt Alloy

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475

Предыдущая тема: Работа в Delphi c CryptoApi


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.