Работа с заблокированными файлами на PHP

Discussion in 'PHP' started by BestOFtheBest, 3 Mar 2010.

  1. BestOFtheBest

    BestOFtheBest Member

    Joined:
    19 Dec 2007
    Messages:
    4
    Likes Received:
    5
    Reputations:
    5
    Существует такая проблема, нужно просматривать avi файл в WMP, одновременно дописывая в него данные. PHP выдаёт access denied при fopen'е файла, который в данный момент проигрывается в WMP. При этом проги для работы с залоченными файлами существуют и прекрасно функционируют. Как реализовать это на PHP??
     
  2. undef

    undef New Member

    Joined:
    23 Sep 2009
    Messages:
    19
    Likes Received:
    4
    Reputations:
    5
    никак. windows блокирует файлы, с которыми в данный момент осуществляется работа. чтобы разблокировать их, приходится делать довольно грязный и низкоуровневый хак, который уж точно не осуществим средствами php.
    как решения могу предложить - запускать из php программу, которая будет снимать блокировку, написать модуль для php, который будет имплементировать функцию, разблокирующую файл, ну и самый правильный вариант - использова php по назначению на linux/freebsd машинах, где к тому же файлы никогда не блокируются таким обазом. можно даже удалить или переметстить файл, из которого в данный момент идет чтение - это никак не повлияет на читающую программу, он будет физически удален только в тот момент, когда будут удалены все хардлинки, указывающие на него и закроется последний дескриптор, связанный с ним.
     
    2 people like this.
  3. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    По написанию модулей пыриться в мою статью: http://habrahabr.ru/blogs/php/75388/
    Самое простое решение из существующих.