powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / FileCopy - дождаться завершения процесса
11 сообщений из 11, страница 1 из 1
FileCopy - дождаться завершения процесса
    #36514681
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Делаем FileCopy, потом FileOpen свежеполученного файла. Иногда получаем -1. Есть подозрение, что FileOpen срабатывает ДО завершения копирования. Хотя, по-идее, FileCopy и FileOpen - функции РВ. И пока не завершится одно действие, второе не должно начаться. Это так? Как побороть? Добавление перед FileOpen лупов/йелдов помогает, но опять-таки не всегда. Что еще можно придумать?
...
Рейтинг: 0 / 0
FileCopy - дождаться завершения процесса
    #36514747
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Return не забываем отслеживать?
-----------------------------------------------------------------------------
Главная деталь любой машины - голова ее владельца
...
Рейтинг: 0 / 0
FileCopy - дождаться завершения процесса
    #36518863
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spas2001,
Return чего?
...
Рейтинг: 0 / 0
FileCopy - дождаться завершения процесса
    #36518883
maxATC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Riskaspas2001,
Return чего?

FileCopy
Integer. Returns values as follows:
1 —Success
-1—Error opening sourcefile
-2—Error writing targetfile
...
Рейтинг: 0 / 0
FileCopy - дождаться завершения процесса
    #36518987
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maxATC,
FileCopy = 1
FileOpen иногда получаем -1.
...
Рейтинг: 0 / 0
FileCopy - дождаться завершения процесса
    #36518998
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Riska,
Таким макаром проблема решается:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
...FileCopy()
ll_filenum = FileOpen(as_file_name,StreamMode!)

DO WHILE ll_filenum <  1 
	Yield()
	ll_filenum = FileOpen(as_file_name,StreamMode!)
	ll_i++
	IF ll_i >  1000  THEN EXIT
LOOP

MessageBox('', string(ll_i))
Но хочется сделать что-нибудь более умное. Типа, Wait, пока копирование не закончится. ll_i выдает результат от 0 до 300
...
Рейтинг: 0 / 0
FileCopy - дождаться завершения процесса
    #36519068
AIS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Riska...Типа, Wait, пока копирование не закончится...
создать отдельный процесс для FileCopy и воспользоваться традиционно функцией:
Код: plaintext
1.
2.
3.
Function long WaitForSingleObject ( &
	long hHandle, &
	long dwMilliseconds &
	) Library "kernel32.dll"
...
Рейтинг: 0 / 0
FileCopy - дождаться завершения процесса
    #36520086
Фотография ChV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А может все попытаться "вылечить" проще ?
К примеру - "вынести" скрипт в две функции.
В первой ... FileOpen ... FileCopy... FileClose ...
Во второй ... FileOpen ...
Но вторую функцию вызывать указывая "Post".
Вообще-то странная проблема. Никогда таких не имел.

Good Luck !
...
Рейтинг: 0 / 0
FileCopy - дождаться завершения процесса
    #36520163
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ChV,
"Post" не поможет. Результат будет тотже, что и без "Post".
...
Рейтинг: 0 / 0
FileCopy - дождаться завершения процесса
    #36524675
armblg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мож попробовать копировать апишной функцией FileCopyA (или как там ее), мож она менее кривая?
...
Рейтинг: 0 / 0
FileCopy - дождаться завершения процесса
    #36525242
Фотография AIZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да просто из PFC надергайте и проблем не будет.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / FileCopy - дождаться завершения процесса
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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