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

Вниз

Использование файла   Найти похожие ветки 

 
Александр1   (2004-09-11 05:39) [0]

Здравствуйте уважаемые мастера! Имеется файл 1.txt. Этот файл используется сразу двумя программами (ну ни одновременно, а по очереди). Одна программа открывает с начало его для записи (и записывает туда информацию), а другая открывает его для чтения (и считывает информацию с файла). А как узнать той программе которая читает файл, закончила ли первая программа запись в этот файл. Т.е. как определить используется ли файл в данный момент каким либо приложением или системой или нет.

Ещё бы было бы неплохо получить имя и путь к нему exe файлу, который в данный момент использует файл.  
Заранее спасибо за помощь!


 
DeadMeat ©   (2004-09-11 11:33) [1]

Для конкретного случая (если обе программы твои) можно использовать средства синхронизации потоков (нитей): Event, Mutex, Semaphore. В одном процессе устанавливаешь перед началом операции и сбрасываешь после окончания (или наоборот... не помню).

---
...Death Is Only The Begining...


 
VMcL ©   (2004-09-11 21:04) [2]

+ к [1].

Может подойдет еще LockFile, LockFileEx.


 
Александр1   (2004-09-13 05:49) [3]

А где можно почитать про
> средства синхронизации потоков (нитей):


 
Erik1 ©   (2004-09-13 09:51) [4]

В Delphi нажать F1 на Event и пр..


 
Ozone ©   (2004-09-13 10:20) [5]

Александр1   (13.09.04 05:49) [3]

http://mbo88.narod.ru/ToC.html


 
Александр1   (2004-09-14 11:16) [6]

Незнаю, но по моему с потоками это замут большой.


 
Александр1   (2004-09-15 10:41) [7]


> VMcL ©   (11.09.04 21:04) [2]
> + к [1].
>
> Может подойдет еще LockFile, LockFileEx.

А чё такое LockFile, LockFileEx?


 
VMcL ©   (2004-09-15 15:45) [8]

>>Александр1  (15.09.04 10:41) [7]

Диверсанты стёрли Windows SDK Help?


 
Александр1   (2004-09-16 03:54) [9]


> Диверсанты стёрли Windows SDK Help?

Нет они забыли его перевести с английского на русский.


 
dhdd   (2004-09-16 06:28) [10]

Пока 1.txt используется, создать 1.~tx, где записать имя программы. После закрытия файла 1.txt удалить 1.~tx.

Перед открытием 1.txt проверить наличие 1.~tx.


 
VMcL ©   (2004-09-16 14:00) [11]

>>Александр1  (16.09.04 03:54) [9]

Извини, я в "мастера английского" не записывался.


 
Александр1   (2004-09-21 18:43) [12]


> dhdd   (16.09.04 06:28) [10]
> Пока 1.txt используется, создать 1.~tx, где записать имя
> программы. После закрытия файла 1.txt удалить 1.~tx.
>
> Перед открытием 1.txt проверить наличие 1.~tx.

Гениально! Супер Спасибо большое!
И чё же я раньше не лодумался.
Это правдо подайдёт в том случае если обе программы написаны тобой. А как если программа не твоя. Или вообще файл используется windows?



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

Форум: "WinAPI";
Текущий архив: 2004.10.24;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.04 c
1-1097488798
Mutilator
2004-10-11 13:59
2004.10.24
Как убить скроллбары у родительской формы fsMDIForm?


14-1096979739
Игорь Шевченко
2004-10-05 16:35
2004.10.24
Нету ли в природе программы транслитерации русских символов?


1-1097467293
TeNY
2004-10-11 08:01
2004.10.24
Как рисовать на экране?


3-1096106628
Сол
2004-09-25 14:03
2004.10.24
DBGrid + Word


4-1095444827
Antonmm2
2004-09-17 22:13
2004.10.24
Нажатие кнопок другого приложения





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский