|
v7: Проблема с переименованием файла | ☑ | ||
---|---|---|---|---|
0
satoru
10.09.19
✎
16:20
|
Платформа: 7.70.027
Не получается переименовать файл командой ФС.ПереименоватьФайл. 1С даже не выдаёт ошибку, просто остаётся исходный файл(ИмяФайла1). Код: ИмяФайла = "text file 10.09.2019.txt"; ИмяФайла1 = "t0.txt"; ИмяНачКаталога = КаталогПользователя(); ФС.ПереименоватьФайл(ИмяНачКаталога+"\"+ИмяФайла1, ИмяНачКаталога+"\"+ИмяФайла,1); |
|||
1
Kigo_Kigo
10.09.19
✎
16:24
|
КаталогПользователя(); возвращает C:\Base_1c\DB\
|
|||
2
Kigo_Kigo
10.09.19
✎
16:24
|
думаешь твоя дополнительная +"\"+ нужна?
|
|||
3
Chum
10.09.19
✎
16:25
|
text file 10.09.2019.txt - атрибут только для чтения?
Полное имя файла исходного проверь в отладчике или выведи в сообщить() |
|||
4
Chum
10.09.19
✎
16:27
|
+(3) не уверен, но всякие пробелы и лишние точки в имени файла могут просто не понравится программе 20-летней давности.
|
|||
5
satoru
10.09.19
✎
16:30
|
(1) Нет, возвращает каталог пользователя.
|
|||
6
satoru
10.09.19
✎
16:31
|
(2) да. Смотрел, через отладчик.
|
|||
7
satoru
10.09.19
✎
16:32
|
(3) поясню:
Файл приемник "text file 10.09.2019.txt"; Файл источник = "t0.txt"; |
|||
8
Kigo_Kigo
10.09.19
✎
16:33
|
(5) это пример *рукаЛицо*, а так
ФС.ПереименоватьФайл(ИмяНачКаталога+ИмяФайла1, ИмяНачКаталога+ИмяФайла,1); |
|||
9
satoru
10.09.19
✎
16:35
|
(8) результат тот же. И самое противное, что 1С даже не сообщает, в чем проблема.
|
|||
10
vova1122
10.09.19
✎
16:36
|
для начала проверь на простіх файлах. Типа переименовать aaa.txt в bbb.txt
|
|||
11
satoru
10.09.19
✎
16:38
|
(10) заменил "text file 10.09.2019.txt" на "t1.txt" - результат тоже.
|
|||
12
satoru
10.09.19
✎
16:38
|
Если поможет ОС: Windows 10
|
|||
13
Kigo_Kigo
10.09.19
✎
16:44
|
а 1с ка от имени администратора запущена?
|
|||
14
РусскийВедун
10.09.19
✎
16:44
|
файл должен быть закрыт у всех. и пробуй через попытку исключение
|
|||
15
satoru
10.09.19
✎
16:45
|
(13) да
|
|||
16
vova1122
10.09.19
✎
16:48
|
Может еще дело в название каталога пользователя? Попробуй в корне диска переименовать
|
|||
17
РусскийВедун
10.09.19
✎
16:49
|
делай так
попытка ФС.ПереименоватьФайл(ИмяНачКаталога+"\"+ИмяФайла1, ИмяНачКаталога+"\"+ИмяФайла,1); исключение солобщить(описаниеошибки); конецпопытки файл точно должен у всех быть закрыт, а может и каталог. |
|||
18
satoru
10.09.19
✎
16:49
|
(14) Да! Файл был заблокирован самой 1С. Спасибо. Привет разрабам (платформа 1С), которые даже не думали о том, чтобы информировать пользователей об ошибках при выполнении кода.
Всем ещё раз спасибо за помощь. Хорошего дня. |
|||
19
РусскийВедун
10.09.19
✎
16:51
|
(18) в свое время с этим долго разбирался, даже помню оказывается.
|
|||
20
vova1122
10.09.19
✎
16:54
|
А как 1С блокирует текстокый файл? С таким никогда не сталкивался.
|
|||
21
piter3
10.09.19
✎
16:55
|
(20) если его открыть и не закрыть.Так все делают
|
|||
22
РусскийВедун
10.09.19
✎
16:55
|
(20) я так понимаю, что 1с его наверное создает, а потом его хотят переименовать, через некоторое время.
|
|||
23
РусскийВедун
10.09.19
✎
16:56
|
(22) я сталкивался с такими поставками задач
|
|||
24
vova1122
10.09.19
✎
16:57
|
(21) Чтение из текстового файла никогда не закрываю.
|
|||
25
piter3
10.09.19
✎
16:58
|
(24) А редактирование:)
|
|||
26
hhhh
10.09.19
✎
17:10
|
(24) например запись файла идет 5 секунд. А он не дождавшись запускает переименование. Вот и занято. Надо ему задержку вставить, wait на несколько секунд, тогда точно переименуется.
|
|||
27
Сияющий в темноте
12.09.19
✎
00:22
|
делайте через Scripting.FileSystemObject
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |