powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / ошибка при копировании открытого файла
9 сообщений из 9, страница 1 из 1
ошибка при копировании открытого файла
    #32991273
vital345
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
хочу скопировать файл
copy file example.dbf to ex.dbf
Но если файл занят кем-то(кто-то его уже смотрит), мне выдается ошибка
и дальше прогр-ма будет выполняться только если нажмешь ignore
Вопрос: как можно заранее проверить заблокирован файл или свободен, чтобы
выдавать польз-лю окошко, что файл заблокирован и не пытаться скопировать его?
...
Рейтинг: 0 / 0
ошибка при копировании открытого файла
    #32991287
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
посмотри здесь http://forum.foxclub.ru/read.php?f=29&i=1808&t=1808, как альтернативный вариант COPY TO, APPEND FROM
...
Рейтинг: 0 / 0
ошибка при копировании открытого файла
    #32991339
Strong
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: 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.
******программа
ON ERROR bl_EXIT=MyError(ERROR())
copy file grp_del.dbf to ex.dbf
ON ERROR 
IF bl_EXIT
	*выход из программы
	MESSAGEBOX("Завершение работы")
ELSE 
	MESSAGEBOX("Готов к работе")
	*код 
ENDIF 
********************************
PROCEDURE Myerror
	LPARAMETERS nl_ErrNum
	DO CASE 
	CASE  nl_ErrNum= 1705 
		MESSAGEBOX("Файл занят попробуйте позднее")
		RETURN .T.
	CASE  nl_ErrNum= 1102 
		MESSAGEBOX("Не могу создать файл")
		RETURN .T.
	OTHERWISE  
		RETURN .F.
	ENDCASE   
ENDPROC 
______________________________________
с уважением: Strong
...
Рейтинг: 0 / 0
ошибка при копировании открытого файла
    #32991470
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, вот есть готовое решение http://]http://www.foxclub.ru/sol/index.php?act=view&id=472
...
Рейтинг: 0 / 0
ошибка при копировании открытого файла
    #32991491
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gg=fopen('example.dbf ',2)
if gg>0
fclose(gg)
copy file example.dbf to ex.dbf
endif
...
Рейтинг: 0 / 0
ошибка при копировании открытого файла
    #32991630
vital345
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
leafgg=fopen('example.dbf ',2)
if gg>0
fclose(gg)
copy file example.dbf to ex.dbf
endif
спасибо, воспользовался такой проверкой, все залетало
...
Рейтинг: 0 / 0
ошибка при копировании открытого файла
    #32991669
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
при таком подходе еще полезна функция FILE() для проверки существования файла на диске как организоваться придумайте сами
кроме того по ветке елсе моно при желании организовать выборку через селект в тот же файл если моно его открыть в режиме шары
тот пример что приведен он простейший и только заготовка
...
Рейтинг: 0 / 0
ошибка при копировании открытого файла
    #32992326
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi vital345!

> спасибо, воспользовался такой проверкой, все залетало

Ты серьёзно веришь что в компьютерах программа выполняется "мгновенно", и между 2-мя командами - fclose и COPY FILE никто и никогда не сможет открыть файл и тем самым его заблокировать? Эх, наивный :)

Всё решается на обработке ошибок - просто, безотказно и логично.

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
ошибка при копировании открытого файла
    #32993661
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если хорошо подумать то только обработка ошибок
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / ошибка при копировании открытого файла
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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