Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Ошибка 32: Процесс не может получить доступ к файлу, так как этот файл занят другим ...
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, При копировании файла с помощью CopyFileEx, CopyFile иногда возникает ошибка вида: Code 32: Процесс не может получить доступ к файлу, так как этот файл занят другим процессом Как я понял, никто не застрахован от такой ошибки, которая возникает время от времени, как-то через раз. Есть подозрение, что в момент обращения к файлу его блокирует антивирусник. Можно ли из программы Delphi узнать, какой сторонний процесс блокирует копируемый файл (ведь Far Manager как-то это определяет и показывает)? Хотелось бы из Delphi это узнать и показать пользователю имя процесса, который блокирнул файл. Заранее благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2021, 09:52 |
|
||
|
Ошибка 32: Процесс не может получить доступ к файлу, так как этот файл занят другим ...
|
|||
|---|---|---|---|
|
#18+
Да . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2021, 12:10 |
|
||
|
Ошибка 32: Процесс не может получить доступ к файлу, так как этот файл занят другим ...
|
|||
|---|---|---|---|
|
#18+
GunSmoker, Спасибо за пример, хотя мне кажется он бесполезен из-за главного недостатка - Этот API рассчитывает на то, что программа, заблокировавшая файл, реализует и зарегистрирует специальный интерфейс. Если же приложение не озаботится этой задачей, то вы не сможете использовать этот метод. Я уверен, что 95% программ никакой специальный интерфейс не реализуют. Код: pascal 1. 2. 3. 4. 5. Проверял на 2-х файлах. На одном из них Far Manager выдал конкретно ID и имя процесса, который заблокировал указанный файл, а предложенная функция GetFileInUseInfo возвращает nil (не проходит условие while (enumMoniker.Next(1, enumIndex, nil) = S_OK) - возвращает число 1) Видимо, есть какой-то другой способ узнать имя или ID процесса, который блокирует файл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2021, 16:42 |
|
||
|
Ошибка 32: Процесс не может получить доступ к файлу, так как этот файл занят другим ...
|
|||
|---|---|---|---|
|
#18+
Используется ли файл?См. также: Как мне найти программу, которая держит этот файл? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2021, 18:15 |
|
||
|
Ошибка 32: Процесс не может получить доступ к файлу, так как этот файл занят другим ...
|
|||
|---|---|---|---|
|
#18+
Огромное спасибо! Это то, что надо. Я конечно переделал под себя этот код, но работает отлично, тестировал на разных ОС семейства Windows. Задача решена. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2021, 21:43 |
|
||
|
Ошибка 32: Процесс не может получить доступ к файлу, так как этот файл занят другим ...
|
|||
|---|---|---|---|
|
#18+
Еще такой вопрос. В Windows 2003 server и Windows XP программа перестала запускаться - ругается на отсутствие 'Rstrtmgr.dll'. Видимо, Restart Manager еще не существовал во времена XP. В моем модуле при указании внешних ф-ций QueryFullProcessImageName, RmStartSession и др. указана Код: pascal 1. Как сделать, чтобы для WinXP вообще не работал данный unit? Соответственно, связанных с этим функций в WinXP я вызывать не буду. Я конечно условием IF могу проверить, в какой версии Windows запущена программа, но dll пытается подгрузить еще при загрузке exe-файла, когда инициализируются все модули. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2021, 13:57 |
|
||
|
Ошибка 32: Процесс не может получить доступ к файлу, так как этот файл занят другим ...
|
|||
|---|---|---|---|
|
#18+
Динамическая загрузка с помощью LoadLibrary тебе в руки. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2021, 14:03 |
|
||
|
Ошибка 32: Процесс не может получить доступ к файлу, так как этот файл занят другим ...
|
|||
|---|---|---|---|
|
#18+
m52 Как сделать, чтобы для WinXP вообще не работал данный unit? Соответственно, связанных с этим функций в WinXP я вызывать не буду. Если версия дельфей позволяет, можно использовать отложенную загрузку: Код: pascal 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2021, 18:14 |
|
||
|
Ошибка 32: Процесс не может получить доступ к файлу, так как этот файл занят другим ...
|
|||
|---|---|---|---|
|
#18+
Kazantsev Alexey, Спасибо огромное! Это как раз то, что нужно! Теперь всё отлично работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2021, 19:22 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=40069098&tid=2037351]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
173ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
2ms |
| others: | 290ms |
| total: | 565ms |

| 0 / 0 |
