kefirux

|
Posted: Wed Dec 10, 2008 17:09 Post subject: |
|
|
ну чтож. не прошло и года, а я всё-таки реализовал циклическое сравнение папок, и это кстати даже хорошо, потомучто по идее информация не должна теперь потеряться уж точно)
Code: |
'Option Explicit
Dim WshShell
Dim RetCode
Dim fso
Dim StartFolder
Dim TCS
Dim FItem
Dim Answer
Dim curFolder, curFolder2
Set WshShell = CreateObject("WScript.Shell")
RetCode = WshShell.Run("""E:\Program Files\Total Commander\TotALCMD.EXE"" /O /L=""X:\- ПАКИ ФОТОСЕТОВ"" /R=""F:/Dcim""", 0, False)
WScript.Sleep 1000
Set TCS=CreateObject("TCSCRIPT.Helper")
TCS.Wait=true
TCS.SendCommand "cm_FocusLeft"
TCS.SendCommand "cm_MkDir",TCS.Wait
TCS.SendKeystroke "{Enter}"
TCS.LockTC true
TCS.SendCommand "cm_FocusRight"
Set fso = CreateObject("Scripting.FileSystemObject")
StartFolder = "F:/Dcim"
If fso.FolderExists(StartFolder) = False Then
MsgBox "какаято ошибка!", vbCritical
TCS.SendCommand "cm_Exit"
Set TCS = Nothing
WScript.Quit
End If
TCS.Pause=200
Set curFolder = fso.GetFolder(StartFolder)
For Each FItem In curFolder.SubFolders
RetCode = WshShell.Run("""E:\Program Files\Total Commander\TotALCMD.EXE"" /O /R="""& Fitem &"""", 7, False)
WScript.Sleep 100
TCS.SendCommand "cm_SelectAll"
TCS.SendKeystroke "{F5}"
TCS.SendKeystroke "{Enter}"
Next
TCS.LockTC false
TCS.SendCommand "cm_Minimize"
Set curFolder2 = fso.GetFolder("F:/Dcim")
Do
Set curFolder = fso.GetFolder(TCS.GetTrgPath)
WScript.Sleep 500
Loop While curFolder.Size <> curFolder2.Size
answer = msgbox(TCS.GetTrgPath & " " & curFolder2.Size & " => " & curFolder.Size & vbNewLine & "=========================" & vbNewLine & "Запустить Lightroom?", vbOkCancel)
if answer=vbOk then RetCode = WshShell.Run("""E:\Program Files\Adobe\Adobe Photoshop Lightroom 2\lightroom.exe"" """ & TCS.GetTrgPath & """", 0, False)
TCS.SendCommand "cm_Exit"
Set TCS = Nothing
WScript.Quit
|
хочу отметить что ВБ я до вчерашнего дня не знал)
долго искал как тут перенос строки сделать, оказывается vbNewLine
и самое смешное что вот если бы я сюда не писал бы о своих проблемах, то нифига бы не получилось, потому что великий закон подлости форумов - только спросил совета, как тут же находишь сам на него ответ) |
|