![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 26.02.2013
Сообщений: 66
|
![]()
Если процесс открыл файл на запись, потом ненормально завершился и файл остался открытым, может другой процесс это проверить и переоткрыть? Имеются в виду Thread в одной и той же проге
|
![]() |
![]() |
![]() |
#2 | ||
Старожил
Регистрация: 30.12.2009
Сообщений: 11,434
|
![]() Цитата:
Цитата:
|
||
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 26.02.2013
Сообщений: 66
|
![]()
система закроет, когда завершится вся прога. а если thread внутри неё, то нет. просто CloseFile не берёт
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
а вы не можете закрыть файл в чужом процессе никак.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#5 |
Участник клуба
Регистрация: 12.09.2012
Сообщений: 1,030
|
![]()
Прсто сделай deletefile и всё. Тогда уже файл некому не достанется.
Если же надо чтобы файл мог открыватся из основного процесса, то лучше хранить дерективу на файл в основном адрессном пространстве процесса(короче говоря в разделе var юнита главной формы), тогда к нему можно будет обратится ещё раз, даже без переоткрытия.
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби. ![]() Последний раз редактировалось саша40; 18.12.2014 в 17:13. |
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 23.03.2013
Сообщений: 218
|
![]()
Сделай копию, тогда сможешь прочитать, а так никак не закрыть.
Чтобы изменить файл, нужно принудительно завершить все нити, которые с ним связаны |
![]() |
![]() |
![]() |
#7 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 26.02.2013
Сообщений: 66
|
![]()
Пусть даже переменная файла глобальная, всё равно AssignFile ее делать надо? Может можно как-то отловить идентификатор процесса, в к-м файл открыт? проблема в том, что нужно перезаписывать файл, не выходя из программы. неужели нет низкоуровневого доступа?
|
![]() |
![]() |
![]() |
#9 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
сколько им не пользовался он в основном грохал процесс в котором открыт файл
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
![]() |
![]() |
![]() |
#10 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
I'm learning to live...
|
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Постоянно слетает галочка "автоматически" в "Параметры Excel", "Формулы", "Вычисления в книге" | Alexsandrr | Microsoft Office Excel | 4 | 19.10.2013 14:22 |
создать файл формата ".dwg" или "dxf" | Sergey_gorobets | Помощь студентам | 2 | 26.03.2013 03:03 |
Нужно поле "Загрузить файл" в "новости сайта" | planetary | Помощь студентам | 1 | 24.06.2010 12:26 |
Исходник программы "узнать чужой IP" | YoraG | Работа с сетью в Delphi | 6 | 18.10.2009 10:01 |
Excel файл открывается не "до конца" (странички "не показываются" только серое поле) | Dorvir | Microsoft Office Excel | 2 | 28.03.2008 10:03 |