Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: Автоматизация при копировании, как? 
Author Message
Batya



PostPosted: Tue Dec 25, 2007 17:14    Post subject: Reply with quote

Вот этот скрипт должен тебя устроить:
Code:
'=============================================================================
' Копирование с помощью TC содержимого одной папки в другую.
' В скрипте используется WSH Helper for TC by Volniy

' Должно быть 2 входных параметра:
'   1 - исходная папка (откуда копировать),
'   2 - целевая  папка (  куда копировать)
' Пример:
'   "C:\Из этой папки я копирую\" "C:\В эту папку я копирую\"
'=============================================================================
Option Explicit
' Проверяем число параметров
Dim Title
Title = "Копирование с помощью TC"
If WScript.Arguments.Count < 2 Then
  MsgBox "Неправильно заданы параметры!", _
    vbOKOnly + vbCritical, _
    Title
  WScript.Quit
End If

Dim FSO, SourceDir, TargetDir

Set FSO   = CreateObject("Scripting.FileSystemObject")
SourceDir = WScript.Arguments(0)
TargetDir = WScript.Arguments(1)

If Not FSO.FolderExists(SourceDir) Then
  MsgBox "Неправильно задана исходная папка!", _
    vbOKOnly + vbCritical, _
    Title
  Set FSO = Nothing
  WScript.Quit
End If

If Not FSO.FolderExists(TargetDir) Then
  MsgBox "Неправильно задана целевая папка!", _
    vbOKOnly + vbCritical, _
    Title
  Set FSO = Nothing
  WScript.Quit
End If

Dim TCS, WSH, TC, SaveSrcDir, SaveTrgDir

Set TCS = CreateObject("TCScript.Helper")
Set WSH = CreateObject("WScript.Shell")

TCS.LockTC True
TC = TCS.TCPath & "\TOTALCMD.EXE"
SaveSrcDir = TCS.GetSrcPath
SaveTrgDir = TCS.GetTrgPath

' Открываем в противоположной панели TC целевую папку
WSH.Run TC & " /o /s /r=""" & TargetDir & """", 7, True
' Небольшая пауза
WScript.Sleep 100
' Открываем в активной панели TC исходную папку
WSH.Run TC & " /o /s /l=""" & SourceDir & """", 7, True
' Небольшая пауза
WScript.Sleep 100
' Выделяем все
TCS.SendCommand "cm_SelectAllBoth"
' Ставим в очередь на копирование
TCS.SendCommand "cm_Copy"
TCS.SendKeystroke "{F2}"
' Небольшая пауза
WScript.Sleep 100
' Открываем в противоположной панели TC прежнюю папку
WSH.Run TC & " /o /s /r=""" & SaveTrgDir & """", 7, True
' Небольшая пауза
WScript.Sleep 100
' Открываем в активной панели TC прежнюю папку
WSH.Run TC & " /o /s /l=""" & SaveSrcDir & """", 7, True

TCS.LockTC False

Set FSO = Nothing
Set TCS = Nothing
Set WSH = Nothing
WScript.Quit

Только, как говорится, "Вы используете данную программу на свой страх и риск" Smile
_________________
Нет, я не сплю. Я просто медленно моргаю.
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group