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

Вниз

Как закрыть файл отображенный в память после зависания?   Найти похожие ветки 

 
DVM   (2003-09-10 17:24) [0]

Вопрос вот в чем. Есть программа, есть хук в длл. Программа и длл общаются посредством Memory Mapped File. Проблема в том, что после зависания или насильственного убиения программы общаться с dll через файл она не может, т.к. не может его создать/открыть, потому что старый уже существует (мое предположение). Вобщем не работает.
Нет ли способа закрыть такой файл, если известно только его имя?


 
Игорь Шевченко   (2003-09-10 17:33) [1]


> Проблема в том, что после зависания или насильственного
> убиения программы общаться с dll через файл она не может,
> т.к. не может его создать/открыть


Подробнее на эту тему ? DLL в чужом процессе открывает файл ?


 
Morfein   (2003-09-10 17:49) [2]

Этот файл перестаёт существовать после закрытия родительского процесса.


 
DVM   (2003-09-10 18:19) [3]


> Подробнее на эту тему ? DLL в чужом процессе открывает файл
> ?

Да. Открывает или создает. Зависит от его текущего состояния.

> Morfein © (10.09.03 17:49) [2]
> Этот файл перестаёт существовать после закрытия родительского
> процесса.

Это я знаю. Но при "вылете" процесса файл тоже закрывается? А тот файл с которым работает длл как закрыть?


 
Игорь Шевченко   (2003-09-10 18:25) [4]

Никак. Он же во владении чужого процесса. При выгрузке DLL, если она скажет CloseHandle, он и закроется. Ты можешь запустить свою программу заново, и создать этот файл (разумеется, с именем). Если вернет ошибку ERROR_ALREADY_EXISTS, то продолжай с ним работать



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

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

Наверх




Память: 0.45 MB
Время: 0.033 c
3-41077
Layner
2003-10-23 16:54
2003.11.13
Неполное копирование БД SQL Server 2000


3-41093
3APA3A
2003-10-23 09:57
2003.11.13
Как работать с переменными и SQL


6-41838
Незнайко
2003-09-12 16:01
2003.11.13
Как по удал. IP узнать Name?


3-41048
safarov
2003-10-24 06:27
2003.11.13
Импортирование


14-42135
Style
2003-10-22 11:35
2003.11.13
---|Ветка была без названия|---





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