Автор Тема: Как узнать используется ли файл другими процессами?  (Прочитано 3728 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Yashied [?]

  • AutoIt MVP
  • Глобальный модератор
  • *
  • Сообщений: 5379
  • Репутация: 2700
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.x.x
Нижеприведенная функция ответит на этот вопрос.

Код: AutoIt [Выделить]
#Include <WinAPI.au3>

ConsoleWrite(_FileInUse(RegRead('HKLM\SOFTWARE\AutoIt v3\AutoIt', 'InstallDir') & '\AutoIt.chm') & @CR)

Func _FileInUse($sFile)

    Local $hFile = _WinAPI_CreateFile($sFile, 2, 2, 0)

    If $hFile Then
        _WinAPI_CloseHandle($hFile)
        Return 0
    EndIf

    Local $Error = _WinAPI_GetLastError()

    Switch $Error
        Case 32 ; ERROR_SHARING_VIOLATION
            Return 1
        Case Else
            Return SetError($Error, 0, 0)
    EndSwitch
EndFunc   ;==>_FileInUse



Думай, прежде чем говорить.

Русское сообщество AutoIt


Оффлайн Redline [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 506
  • Репутация: 369
  • Пол: Мужской
    • Награды
Еще бы узнать кем используется, прикрутить возможность убить использующий процесс(а лучше освободить файл) и будет полноценный Unlocker  :)
Уроки по регулярным выражениям на AutoIt: RegExp

Русское сообщество AutoIt

Re: Как узнать используется ли файл другими процессами?
« Ответ #1 Отправлен: Декабрь 08, 2010, 08:51:03 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
6 Ответов
7076 Просмотров
Последний ответ Январь 25, 2011, 03:25:05
от Pavel
6 Ответов
3899 Просмотров
Последний ответ Май 07, 2011, 20:52:55
от Rodik-soft
5 Ответов
4674 Просмотров
Последний ответ Июнь 07, 2011, 16:17:50
от axlwor
8 Ответов
5515 Просмотров
Последний ответ Ноябрь 05, 2011, 12:20:20
от Ganibal95
3 Ответов
1590 Просмотров
Последний ответ Май 20, 2014, 00:21:20
от erlik
14 Ответов
3905 Просмотров
Последний ответ Март 13, 2015, 16:54:55
от DanSaratov
1 Ответов
2572 Просмотров
Последний ответ Январь 27, 2016, 15:52:21
от InnI
1 Ответов
1096 Просмотров
Последний ответ Июль 01, 2016, 02:20:28
от joiner
0 Ответов
224 Просмотров
Последний ответ Март 15, 2018, 02:19:46
от MEXAH
1 Ответов
1578 Просмотров
Последний ответ Март 16, 2018, 17:36:35
от Luciferkox