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 Aug 14, 2007 10:35    Post subject: Reply with quote

jehaz wrote:
Возможно есть мусор - пока мало опыта. Подсказывайте.

Первое и ОЧЕНЬ важное - форматируй текст кода отступами! Если ты сам при небольшом объеме еще можешь разобраться, то читать код другим просто невозможно и совсем неинтересно. Наверное, если бы код был более читабельным, то еще кто-нибудь, кроме меня, мог поучаствовать в обсуждении.
Второе - вставляй комментарии и пустые строки. Это помогает визуально разделить код на блоки.

Далее...
Зачем 2 раза открывать TextStream с именами папок, если у тебя уже сохранен массив папок в MsgFoldersText?
Смысл тот же, но я бы этот код
Code:
While Not TextStream.AtEndOfStream
MsgFoldersStr = TextStream.ReadLine()
If FSO.FolderExists(MsgFoldersStr) Then
MsgFoldersText = MsgFoldersText & MsgFoldersStr & vbCrLf
End If
Wend

записал так (обрати вимание на отступы!!!)
Code:
While Not TextStream.AtEndOfStream
  MsgFoldersStr = TextStream.ReadLine()
  If FSO.FolderExists(MsgFoldersStr) Then
    MsgFoldersText = MsgFoldersText & vbCrLf & MsgFoldersStr
  End If
Wend
' Отбрасываем лидирующий vbCrLf
MsgFoldersText = Mid(MsgFoldersText, 3)

Соответственно, потом можно вместо
Code:
Set TextStream = FolderList.OpenAsTextStream(1)
StrFolder = vbNullString
While Not TextStream.AtEndOfStream
...

использовать
Code:
For Each StrFolder In Split(MsgFoldersText, vbCrLf)
  ...

Потом тебе и
Code:
If FSO.FolderExists (StrFolder) Then

не понадобится.

И еще - хорошо бы в MsgBox использовать не числовые значения, а vb-константы.

P.S. В принципе, я тоже не крутой программер, но vbs-ом увлекаюсь уже давно, и весь опыт приобретен не из книжек, а на основе "проб и ошибок".

Добавлено: Поправил немного (ступил, однако).
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group