Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] неприрывное чтение данных (http://forum.oszone.net/showthread.php?t=234482)

O L E G 12-05-2012 09:33 1914394

неприрывное чтение данных
 
доброго времени суток,подскажите можно написать скрипт,который неприрывно будет обращаться к определенному файлу или папке и считывать данные) для чего мне это что бы файл(папка) были заняты системой и их не возможно было бы удалить и переименовать(изменить) возможно ли это?

Iska 12-05-2012 13:30 1914531

Непрерывно считывать не надо. Достаточно просто открыть для операций записи. Например:
Код:

With WScript.CreateObject("Scripting.FileSystemObject")
        With .OpenTextFile("E:\Песочница\0139\0001.txt", 8)
                Do
                        WScript.Sleep 100
                Loop
               
                .Close
        End With
End With

Папку, содержащую открытый файл, Вы не сможете переместить в Корзину.

Iska 14-05-2012 09:52 1915538

Цитата:

Цитата O L E G
Ок спасибо это помогло,а возмо ли его модифицировать
Так что бы открывать не только txt файлы но и exe »

Возможно, но может быть чревато. Не рекомендую.

Цитата:

Цитата O L E G
папки »

Нет. См. выше:
Цитата:

Цитата Iska
Папку, содержащую открытый файл, Вы не сможете переместить в Корзину. »

Удалить (без использования корзины) папку Вы также не сможете, однако прочие файлы из папки помимо открытого — будут удалены.

Цитата:

Цитата O L E G
и так далее »

Что ещё?

Цитата:

Цитата O L E G
Ошибка при открытии файла hosts »

У Вас нет прав или привилегий на открытие этого файла. Либо антивирус банально отфутболивает.

Зачем Вам этот файл держать открытым?!

Iska 14-05-2012 10:25 1915561

O L E G, мне сложно воспринимать поток сознания. Я предпочитаю видеть нормальные предложения на внятном русском языке, начинающиеся с заглавных букв и заканчивающихся точкой, або иным знаком препинания. Не возражаю, чтобы пишущий пользовался словарём при написании своего поста.

O L E G 14-05-2012 10:34 1915565

Забудь.!

Дальше сам как нибудь разберусь.

O L E G 14-05-2012 13:08 1915633

Додумался и сам сделал).
Работает с любыми файлами.
Код:

Const ForReading = 1, ForWriting = 2, ForAppending = 8
  Dim fso, f
  Set fso = CreateObject("Scripting.FileSystemObject")
  Set f = fso.OpenTextFile("c:\e7.jpg", ForAppending, 8)
Do
                        WScript.Sleep 10
                Loop

Только пока не могу разобрать, можно ли указать для чтения не один файл (c:\e7.jpg),а к примеру не сколько?

O L E G 14-05-2012 14:01 1915669

Все СПС дальше то же разобрался сам.
Код:

Const ForReading = 1, ForWriting = 2, ForAppending = 8
  Dim fso, f, s
  Set fso = CreateObject("Scripting.FileSystemObject")
  Set f = fso.OpenTextFile("C:\2.txt", ForReading, 1)
  Set s = fso.OpenTextFile("C:\1.txt", ForReading, 1)
Do
                        WScript.Sleep 1
                Loop


O L E G 14-05-2012 16:30 1915771

Iska, Скажи пожалуйста, такие действия с реестром можно провести?

Iska 15-05-2012 23:03 1916642

O L E G, какие? Если Вы хотите таким образом заблокировать раздел реестра от удаления, должен Вас разочаровать: на WSH сие невозможно.

DmitriiV 16-05-2012 09:04 1916787

O L E G, а почему Вы пытаетесь защитить объект именно таким способом. Разве нельзя воспользоваться средствами безопасности NTFS?

O L E G 16-05-2012 09:10 1916794

DmitriiV, под Администратором, разрешения легко убрать и многие гадости это умеют


Время: 01:30.

Время: 01:30.
© OSzone.net 2001-