| 
    
            
         
         | 
    
  | 
Настройка планировщика Windows, чтоб срабатывал при изменении файла хранилища | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        Armando    
     20.06.14 
            ✎
    00:56 
 | 
         
        Как настроить планировщик Windows Server 2008, чтоб при изменении файла запускался скрипт? Он такое умеет?     
         | 
|||
| 
    1
    
        Вазелин    
     20.06.14 
            ✎
    02:00 
 | 
         
        (0) нет     
         | 
|||
| 
    2
    
        Вазелин    
     20.06.14 
            ✎
    02:00 
 | 
         
        (0) + как вариант сделать ватник.     
         | 
|||
| 
    3
    
        ildary    
     20.06.14 
            ✎
    07:29 
 | 
         
        (0) берется autoit, в нем пишется процедурка, компилируется exe, ссылка на него кладется в autorun.     
         | 
|||
| 
    4
    
        Галахад    
     гуру 
    20.06.14 
            ✎
    07:54 
 | 
         
        А проверять. С переодичностью 1-5 минут. Или нужен он-лайн?     
         | 
|||
| 
    5
    
        PaulBC    
     20.06.14 
            ✎
    08:19 
 | 
         
        (0) Назначаешь аудит доступа к файлу. В задаче планировщика настраиваешь триггер на событие.     
         | 
|||
| 
    6
    
        vlandev    
     20.06.14 
            ✎
    08:50 
 | 
         
        (0) Если суть скрипта состоит в копировании чего-то куда-то то можно воспользоваться утилитой robocopy , там есть вотчер по событиям изменений в каталоге.     
         | 
|||
| 
    7
    
        Armando    
     20.06.14 
            ✎
    15:43 
 | 
         
        (3) Это и WMI можно, много чем.
 
        (5) Спасибо, это получилось. В журнале генерится событие. Вешаю на это событие задачу. Как в задаче указать, что при изменении именно этого файла. Ибо срабатывать будет при изменении любого файла, на котором висит событие. (6) Нет, не копирование.  | 
|||
| 
    8
    
        Armando    
     20.06.14 
            ✎
    16:00 
 | 
         
        +(7) там вроде надо корректный xpath запрос сваять. буду думать     
         | 
|||
| 
    9
    
        Armando    
     20.06.14 
            ✎
    16:26 
 | 
         
        Получилось. Кому интересно:
 
        <QueryList> <Query Id="0" Path="Security"> <Select Path="Security">*[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and Task = 12800 and (EventID=4663)] and EventData[Data[@Name='ObjectName'] and (Data='ПолныйПутьФайла')]]</Select> </Query> </QueryList>  | 
|||
| 
    10
    
        pumbaEO    
     20.06.14 
            ✎
    17:05 
 | 
         
        (0) раз в 5 минут разве недостаточно проверять на 1cd ? 
 
        У тебя на любом захвате будет ложное срабатывание.  | 
|||
| 
    11
    
        Armando    
     20.06.14 
            ✎
    19:01 
 | 
         
        (10) Про захваты и отмены я потом догадался(
 
        По событию кошерней было бы. Почему-то если с хранилищем работаешь через сервис, то в журнале не появляются записи с нужным EventID. Либо я что-то не так делаю. Но на тестовых текстовых файлах все срабатывает на ура.  | 
|||
| 
    12
    
        Armando    
     20.06.14 
            ✎
    20:04 
 | 
         
        Либо виндовый аудит так работает, либо хранилище такой странный предмет. Если с файлом 1cv8ddb.1CD что-то интерактивно делаешь, даже просто свойства смотришь, то все прекрасно логается. Если из 1С захватываешь объекты, помещаешь объекты, то эти события практически не логаются, хотя видно как меняется время и размер файла хранилища.     
         | 
|||
| 
    13
    
        Armando    
     20.06.14 
            ✎
    20:09 
 | 
         
        Кстати в 20.00 прошел бекап сервера, по логам видно, что было обращение к файлу.
 
        Кто в курсе, что там происходит? Почему в логах Windows нет событий обращения от crserver?  | 
|||
| 
    14
    
        pumbaEO    
     20.06.14 
            ✎
    22:39 
 | 
         
        (13) тоже такое заметил. Как захватил файл, так его и держит. 
 
        Поэтому я проверяю размер файла, ну скорей jenkins проверяет его размеры и считает md5 для базы и только потом определяет изменился или нет.  | 
|||
| 
    15
    
        Armando    
     20.06.14 
            ✎
    23:49 
 | 
         
        Кто такой jenkins? Гуглится мужик усатый какой-то. Что он делает?     
         | 
|||
| 
    16
    
        pumbaEO    
     20.06.14 
            ✎
    23:58 
 | 
         
        (15) build server     
         | 
|||
| 
    17
    
        Armando    
     21.06.14 
            ✎
    15:38 
 | 
         
        Вот что придумал:
 
        1. WMI говорит, что файл хранилища изменился 2. Tool1CD выгружает таблицу Versions 3. Сравнивается время изменения файла со временем последнего коммита +- несколько секунд. Пока что заметил разницу в 5 секунд. 4. ??? 5. profit Жаль, что с планировщиком не получается(  | 
|||
| 
    18
    
        Armando    
     21.06.14 
            ✎
    22:42 
 | 
         
        Можно еще жестче
 
        http://msdn.microsoft.com/en-us/library/aa392282(v=vs.85).aspx здесь описано как регать свои события в журнал. Пишем некий mof файл, компилируем. При изменении нужного файла будет создаваться запись журнале. А на это событие можно повесить планировщик, который будет пинать скрипт.  | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |