![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| ASGDeveloper |
|
|||
|
developer ![]() ![]() Профиль Группа: Участник Сообщений: 389 Регистрация: 1.4.2006 Репутация: 1 Всего: 1 |
Иногда при попытке открытия файла мы получаем алерт о невозможности открытия по причине того, что файл открыт другой прогой. Но если открывать в режиме только чтения, то иногда открываются и закрытые файлы. Мне хочется использовать метод, благодаря которому можно открыть любой закрытый файл и не получить по рукам (от системы) при открытие.
ЗЫ Может CreateFile поможет или есть другие варианты? |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Если открывшая программа запретила расшаривание, то никак ты его не откроешь.
|
|||
|
||||
| BUGOR |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 325 Регистрация: 12.3.2006 Репутация: 5 Всего: 16 |
1. Поиск хэндла открытого файла. 2. Изменение прав доступа существующего хэндла. 3. Чтение файла с помощью прямого доступа к диску. |
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
можно с помощью MemoryStream на чтение открыть даже уже открытый другогй программой файл
|
|||
|
||||
| ASGDeveloper |
|
||||
|
developer ![]() ![]() Профиль Группа: Участник Сообщений: 389 Регистрация: 1.4.2006 Репутация: 1 Всего: 1 |
Разве? Я понимаю системный файл (хотя можно открыть даже pagefile.sys но только частично). Вон Unlocker не только открывает, но и блок снимает. Или антивирусы. Они тоже заблокированные файлы открывать умеют. Добавлено @ 12:15
Использование как FileStream? |
||||
|
|||||
| Akella |
|
||||||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
|
||||||
|
|||||||
| ASGDeveloper |
|
|||
|
developer ![]() ![]() Профиль Группа: Участник Сообщений: 389 Регистрация: 1.4.2006 Репутация: 1 Всего: 1 |
||||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
да, это недостаток при работе с большыми файлами - будет работать медленно, но небоись, винда умная, знает, что делать
Это сообщение отредактировал(а) Akella - 21.7.2006, 12:34 |
|||
|
||||
| ASGDeveloper |
|
|||
|
developer ![]() ![]() Профиль Группа: Участник Сообщений: 389 Регистрация: 1.4.2006 Репутация: 1 Всего: 1 |
||||
|
||||
| Rennigth |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1708 Регистрация: 21.6.2004 Где: Moscow Репутация: 49 Всего: 76 |
Akella,
извини, но ни один из твоих вариантов не отработает... Хоть MemoryStream, хоть FileStream... PS: кстати, код LoadFromFile MemoryStream
-------------------- (* Honesta mors turpi vita potior *) |
|||
|
||||
| Alexeis |
|
||||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Akella, не с tmemorystream не работает
Этот код блокирует
А этот (второе приложение) не может открыть и вызывает ошибку!
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
||||
|
|||||
| ASGDeveloper |
|
|||
|
developer ![]() ![]() Профиль Группа: Участник Сообщений: 389 Регистрация: 1.4.2006 Репутация: 1 Всего: 1 |
||||
|
||||
| BUGOR |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 325 Регистрация: 12.3.2006 Репутация: 5 Всего: 16 |
Не пойму, привёз название 3х методов, 3ий так вообще даёт доступ к любому файлу, хоть к занятому системными службами, хоть к драйверам, к любым, а вы тут спорите понятно вообще о чём... достаточно было открыть яндекс, вбить в строку поиска любое название из трёх и сразу же бы попали на статью с примерами и подробным описанием.
|
|||
|
||||
| ASGDeveloper |
|
|||
|
developer ![]() ![]() Профиль Группа: Участник Сообщений: 389 Регистрация: 1.4.2006 Репутация: 1 Всего: 1 |
Или васм. http://www.wasm.ru/article.php?article=lockfileswork Кстати, если открыть яндекс, то результаты будут весьма мелкими. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |