Dim fso,fsrv,fcli,curpath,vsrv,vcli
Dim oShell,rs,strSql,conn,strConnection
Dim oArgs
'--[func&subs]
Function gv(file)
on error resume next
gv=""
strConnection="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & file & ";User Id=Admin;Password="
strSql="SELECT TOP 1 ver FROM dual"
Set conn = CreateObject("ADODB.Connection")
conn.Open strConnection
Set rs = CreateObject("ADODB.Recordset")
rs.open strSQL, conn
if not rs.Eof then gv=rs(0)
rs.Close
Set rs = Nothing
conn.Close
Set conn = Nothing
Exit Function
End Function
sub updver(fso, fsource,fdestin)
dim filefrom,filetill
on error resume next
strConnection="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & fsource & ";User Id=Admin;Password="
strSql="SELECT path,filename FROM _files"
Set conn = CreateObject("ADODB.Connection")
conn.Open strConnection
Set rs = CreateObject("ADODB.Recordset")
rs.open strSQL, conn
do while not rs.Eof
filefrom=fso.GetParentFolderName(fsource) & rs(0) & rs(1)
filetill=fso.GetParentFolderName(fdestin) & rs(0) & rs(1)
if not fso.FolderExists(fso.GetParentFolderName(filetill)) then
fso.CreateFolder (fso.GetParentFolderName(filetill))
'Wscript.Echo fso.GetParentFolderName(filefrom) & vbcrlf & fso.GetParentFolderName(filetill)
end if
'Wscript.Echo filefrom & vbcrlf & filetill & vbcrlf & fso.GetParentFolderName(filetill)
fso.copyFile filefrom,filetill,True
rs.movenext
loop
rs.Close
Set rs = Nothing
conn.Close
Set conn = Nothing
Exit sub
End sub
'--[run programm]
on error resume next
Set oArgs = WScript.Arguments
fsrv=oArgs(0)
if fsrv="" then
Wscript.Echo "Не найден файл-источник (прописывается в командной строке)" & vbcrlf & "Обратитесь к разработчикам"
Wscript.Quit
end if
Set fso = CreateObject("Scripting.FileSystemObject")
curpath=fso.GetParentFolderName(wscript.ScriptFullName)
fcli = curpath & "\oqueries.mde"
vsrv=gv(fsrv): vcli=gv(fcli)
if vsrv="" then
Wscript.Echo "Ошибка проверки версии файла" & vbcrlf & "Обратитесь к разработчикам"
Wscript.Quit
end if
if vsrv>vcli or vcli="" then '-- обновить приложение
updver fso,fsrv,fcli
end if
'-- запустить приложение
Set oShell= WScript.CreateObject("WScript.Shell")
oShell.Run fcli, , True
Set oShell = Nothing
|