powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Скопировать файл с ограничением
14 сообщений из 14, страница 1 из 1
Скопировать файл с ограничением
    #33463953
Wilg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всех с Новым Годом.
Вот возникла проблема, необходимо периодически копировать содержимое каталога на другой сервер. На этом сервере есть каталог, который периодически обрабатываетя автопроцедурой. Так вот в нем есть ограничение - в нем не должно быть больше 5 файлов, для закачки. Может у кого есть скрипт как это дело сделать на vbscripts.
Сейчас реализован простой батник который каждые 5 мин просто копирует в каталог на сервер файлы. Но это вариант не устраивает, необходимо именно заливать нужное кол-во на сервер.
...
Рейтинг: 0 / 0
Скопировать файл с ограничением
    #33464379
Фотография rrrrrrrrrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Непонятно. Т.е. нужно при уменьшении числа файлов в каталоге "докидывать" туда файлы, чтобы всегда было 5 шт.?
...
Рейтинг: 0 / 0
Скопировать файл с ограничением
    #33464646
Wilg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да именно так
...
Рейтинг: 0 / 0
Скопировать файл с ограничением
    #33464697
Фотография msn13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dir$ , FileCopy
...
Рейтинг: 0 / 0
Скопировать файл с ограничением
    #33464704
Фотография msn13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
msn13dir$ , FileCopy
и по таймеру, проверяшь кол-во файлов и копируешь файлы.
...
Рейтинг: 0 / 0
Скопировать файл с ограничением
    #33464814
Фотография rrrrrrrrrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да можно вообще внаглую FileListBox повесить на форму, по таймеру делать ему обновление и смотреть, сколько там файлов. А потом докидывать.
...
Рейтинг: 0 / 0
Скопировать файл с ограничением
    #33465371
Wilg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот вопрос и заключается, как узнать сколько файлов в каталоге
...
Рейтинг: 0 / 0
Скопировать файл с ограничением
    #33465380
TIKO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rrrrrrrrrrДа можно вообще внаглую FileListBox повесить на форму, по таймеру делать ему обновление и смотреть, сколько там файлов. А потом докидывать.

+
File1.ListCount =возврат количества файлов в указанной папке
...
Рейтинг: 0 / 0
Скопировать файл с ограничением
    #33465384
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно через
Код: plaintext
FileSystemObject
а можно просто дать команду
Код: plaintext
shell "dir /A:-d /B Здесь путь к директории > dir.txt"
и в получившемся файле посчитать кол-во строк
...
Рейтинг: 0 / 0
Скопировать файл с ограничением
    #33465689
Wilg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
// Функция вернет кол-во файлов для помещения на сервер.
function GetFieldsToCopy (PathToCount : string) : integer;
var
 sr: TSearchRec;
 i : integer;
begin
 i:= 0 ;
 if FindFirst(PathToCount, faAnyFile, sr) =  0  then
 begin
   i:= 1 ;
   //LogCopyToBIS.Add('В каталоге '+PathToCount+' найден файл '+ sr.Name);
   while ((FindNext(sr)= 0 ) and (i<MAXCountFile)) do
   begin
     i:=i+ 1 ;
     //LogCopyToBIS.Add('В каталоге '+PathToCount+' найден файл '+ sr.Name);
   end;
   FindClose(sr);
 end else begin
            i:=  0 ;
            AddError('В каталоге '+PathToCount+' файлы не найдены ');
          end;
 if MAXCountFile-i >  0  then Result := MAXCountFile-i else
 Result :=  0 ;
end;
...
Рейтинг: 0 / 0
Скопировать файл с ограничением
    #33465690
Wilg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот так это на делфи выглядет. Хотелось бы на VBS
...
Рейтинг: 0 / 0
Скопировать файл с ограничением
    #33465811
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
FilesInDir "D:\1"

Function FilesInDir(strPath)  
    Dim fso
    Dim fol
    Dim f
    Dim fls
    Dim intI
    
    Set fso = CreateObject("Scripting.FileSystemObject")
    
    If (fso.FolderExists(strPath)) Then
        Set fol = fso.GetFolder(strPath)
        Set fls = fol.Files
        If fls.Count <>  0  Then
            For Each f In fls
                If intI =  5  Then
                    Exit For
                Else
                    MsgBox f.Name
                End If
                intI = intI +  1 
            Next
        Else
             MsgBox "Файлов в директории нет."
        End If
    Else
        MsgBox "Директория не существует."
    End If
End Function
...
Рейтинг: 0 / 0
Скопировать файл с ограничением
    #33465858
Wilg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
СПАСИБО
...
Рейтинг: 0 / 0
Скопировать файл с ограничением
    #33469110
Фотография klen_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Копирует файлы если размер или дата или время изменилось.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Скопировать файл с ограничением
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]