Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.11.06;
Скачать: [xml.tar.bz2];

Вниз

Как проверить что файл уже открыт?   Найти похожие ветки 

 
BorlandC ©   (2005-10-18 14:29) [0]

Хочу перезаписать *.doc файл из Delphi, и он нормально перезаписывается, но если этот файл открыт(например в MicrosoftWord), то приложение выдает ошибку и виснет. Как проверить что этот файл открыт(или не открыт) где-либо???


 
Skyle ©   (2005-10-18 14:33) [1]

Если открыт, то записать не дадут. Возникнет ошибка. "Виснет" - последствия твоей обработки ошибки.
Показывай как обрабатываешь (код).


 
umbra ©   (2005-10-18 14:35) [2]

можно перед сохранением файла попробовать удалить существующий. Если он удалится - все в порядке, если нет - надо решить что делать в таком случае


 
Skyle ©   (2005-10-18 14:44) [3]

> 2] umbra ©   (18.10.05 14:35)
А почему нет ни одного смайлика?
Сознайся, что пошутил.


 
Fay ©   (2005-10-18 15:21) [4]

2 BorlandC ©
>> Хочу перезаписать *.doc файл из Delphi
Понятно что из Delphi. Как именно? Давай код.


 
umbra ©   (2005-10-18 16:25) [5]


> Skyle ©   (18.10.05 14:44) [3]


это не шутка :)))


 
Andy BitOff ©   (2005-10-18 16:28) [6]

Я, в свое время делал так:

function Tfrm_Main.AccessToFile(FName:string):boolean; //False = нет доступа
begin
 if RenameFile(FName,FName+"~") then begin
   RenameFile(FName+"~",FName);
   Result:=True;
 end
 else begin
   Result:=False;
 end;
end;


 
clickmaker ©   (2005-10-18 16:28) [7]

hFile := CreateFile("ddd.doc", GENERIC_WRITE, 0, 0, OPEN_EXISTING, 0, 0);
if (hFile = INVALID_HANDLE_VALUE) and (GetLastError = ERROR_SHARING_VIOLATION) then
 Уже открыт


 
Fay ©   (2005-10-18 17:33) [8]

2 clickmaker ©   (18.10.05 16:28) [7]
А в случае отсутствия файла?


 
Fay ©   (2005-10-18 17:34) [9]

2 clickmaker ©   (18.10.05 16:28) [7]
А, я понял. Это, видимо, буквальный ответ.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2005.11.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.035 c
3-1127827263
vishnia
2005-09-27 17:21
2005.11.06
Index is out of date - почему?


3-1127598752
quadronik
2005-09-25 01:52
2005.11.06
Одна форма для всех таблиц


2-1129544845
lodir
2005-10-17 14:27
2005.11.06
поворот массива


1-1129704794
Zhekson
2005-10-19 10:53
2005.11.06
Передача параметра


1-1129142886
Денис
2005-10-12 22:48
2005.11.06
Как работать граф.файл pcx формата?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский