Первая запись в блоге. Шаблон для разработки VBS скрипта. Может читать udl файлы и писать логи.
Set WshShell = CreateObject("WScript.Shell") ' Подключаемся к шелу операционки
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(WshShell.CurrentDirectory) ' Определение рабочей папки
Set objFolderItem = objFolder.Self
Set objFSO = CreateObject("Scripting.FileSystemObject") ' Подключаемся к файловой системе
<!--break-->
On Error Resume Next ' Отключение реакции на ошибки
'++++++++ Чтение аргументов ++++++++
Set objArgs = WScript.Arguments
Carg = objArgs.Count - 1
'+++++++++++++++++++++++++++++++++++
'________Определение констант_____
PathF = objFolderItem.Path '
iniFilePath = PathF & "\settings.ini"' Имя файла настроек
LogFilePath = PathF & "\main.log"' Имя файла лога
If objFSO.FileExists(LogFilePath) = 0 Then 'Содаем файл лога, если его нет.
set objTSlog = objFSO.CreateTextFile(LogFilePath)
objTSlog.Close
End If
'_________________________________
'======= Основной текст =======
log "Файл подключения к БД sm.udl, файл запроса qwec.sql"
Dbconnect "sm.udl","qwec.sql"
If Err.Number <> 0 Then ' Запись сообщения об ошибке в лог
Log (Err.Description)
ErrReaction (2)
End If
'==============================
'--------Определение функций
Function INIread(iLineNumber)' Чтение файла настроек по номеру строки
Set objTSini = objFS.OpenTextFile(iniFilePath, 1)
For i=1 To (iLineNumber-1)
objTSini.SkipLine
Next
INIread=objTS.Readline
End Function
Function Log (strLog)' Запись лога
Set objTSlog = objFSO.OpenTextFile(LogFilePath, 8)
objTSlog.Writeline Now & " -- " & strLog
objTSlog.Close
End Function
Function ErrReaction (n) 'Реакция на возникновение ошибок
if n=1 Then wscript.quit
if n=0 Then
On Error Goto 0
End If
if n=2 Then MsgBox "Произошла ошибка, описание смотрите в файле " & LogFilePath, vbCritical
If n=3 Then
MsgBox Err.Description
wscript.quit
End If
if n=4 Then log("Что то не так")
End Function
Function Dbconnect (udlFile, QeryFile) 'Подключение к БД и выполнение запроса посредством чтения UDL и SQL файлов
strFilePath = Path & "" & udlFile 'Читаем файл подключения
Const For_Reading = 1
Const Tristate_True = -1
Set objTS = objFSO.OpenTextFile(strFilePath, For_Reading, False, Tristate_True)
objTS.SkipLine
objTS.SkipLine
Udlread=objTS.Readline
Set DBConn = CreateObject("ADODB.Connection")
DBConn.Open(Udlread) 'Пробуем подключится
If Err.Number = 0 Then 'Проверка на наличие проблем подключения
Log "Подключение к БД удалось"
End If
strFilePath = Path & "" & QeryFile
Set SQLf = objFSO.OpenTextFile(strFilePath, 1)
SQLstr = SQLf.ReadAll ' Текст запроса
Set DBrecords=DBConn.Execute(SQLstr) ' Заполняем коллекцию DBrecords результатами выполнения запроса
If Err.Number = 0 Then 'Проверка на наличие проблем выполнения запроса
Log "Запрос " & strFilePath & " выполнен"
End If
End Function
'---------
Комментарии
User_lamer911
11 марта, 2013 - 11:54
Постоянная ссылка (Permalink)
А где пример UDL файла?
Там должна быть строка подключения вроде.