View previous topic :: View next topic |
Author |
Message |
Batya
![](images/avatars/14956831694439fb6161cdd.gif)
Joined: 15 Dec 2004 Posts: 2218 Location: Москва, Россия
|
(Separately) Posted: Fri Nov 18, 2005 14:49 Post subject: Windows Script Host |
|
|
Хочеться начать тему для обмена опытом написания скриптов на Windows Script Host.
В который раз обращаюсь к Volniy - сделай, наконец, релиз своего TCWSHelp и выложи его на wincmd.ru! Это же супер продукт!
Помимо воззваний прошу совета.
Ситуация - запущен скрипт, который постоянно висит в памяти, для сканирования некоторого состояния в папке на диске. Как запуском другого скрипта корретно завершить работу первого?
В первом скрипте организован цикл
Code: | Do While MyKey
...
Loop |
MyKey в цикле не меняется.
Как вторым скриптом заставить штатно выйти из цикла, а не убивать процесс? |
|
Back to top |
|
![](templates/subSilver/images/spacer.gif) |
Lev
![](images/avatars/39627962044ca40a2d05ec.gif)
Joined: 02 Mar 2005 Posts: 392
|
(Separately) Posted: Fri Nov 18, 2005 15:06 Post subject: |
|
|
Я бы просто читал MyKey или какое-другое условие прямо с диска или другого заведенного места. MyKey можно записать и вручную и скриптом
Code: | Do While MyKey
...
прочитать MyKey из файла
Loop |
---
а насчет TCHelper'a - не ждать релиза, а в принудительном порядке завести страничку под него на сайте, выложить туда очередную бету и отдать пароль от странички Volniy, тем более, что сама бета там и так лежит. |
|
Back to top |
|
![](templates/subSilver/images/spacer.gif) |
Batya
![](images/avatars/14956831694439fb6161cdd.gif)
Joined: 15 Dec 2004 Posts: 2218 Location: Москва, Россия
|
(Separately) Posted: Fri Nov 18, 2005 15:16 Post subject: |
|
|
Lev
Quote: | прочитать MyKey из файла |
ОК. Только это наверное не самое оптимальное решение с точки зрения ресурсозатрат (накладно каждый раз читать файл)?
Можно, конечно, еще в реестр писать. Но тоже не очень мне нравится - плодить лишний мусор.
У кого-нибудь еще есть идеи? |
|
Back to top |
|
![](templates/subSilver/images/spacer.gif) |
Batya
![](images/avatars/14956831694439fb6161cdd.gif)
Joined: 15 Dec 2004 Posts: 2218 Location: Москва, Россия
|
(Separately) Posted: Fri Nov 18, 2005 15:19 Post subject: |
|
|
Quote: | а насчет TCHelper'a - не ждать релиза, а в принудительном порядке завести страничку под него на сайте, выложить туда очередную бету и отдать пароль от странички Volniy, тем более, что сама бета там и так лежит. |
Volniy
Неужели действительно придеться так сделать? ![Wink](images/smiles/icon_wink.gif) |
|
Back to top |
|
![](templates/subSilver/images/spacer.gif) |
Lev
![](images/avatars/39627962044ca40a2d05ec.gif)
Joined: 02 Mar 2005 Posts: 392
|
(Separately) Posted: Fri Nov 18, 2005 15:42 Post subject: |
|
|
Можно по-реже читать
Code: | Do While MyKey
counter=counter+1
...
if counter=мульён then
counter=0
прочитать MyKey из отведенного места
end if
Loop |
|
|
Back to top |
|
![](templates/subSilver/images/spacer.gif) |
GeNtlE
Joined: 16 Dec 2004 Posts: 141 Location: Россия, Чита
|
(Separately) Posted: Fri Nov 18, 2005 16:23 Post subject: |
|
|
А можно создать файл в памяти и читать MyKey оттуда? |
|
Back to top |
|
![](templates/subSilver/images/spacer.gif) |
Batya
![](images/avatars/14956831694439fb6161cdd.gif)
Joined: 15 Dec 2004 Posts: 2218 Location: Москва, Россия
|
(Separately) Posted: Fri Nov 18, 2005 16:53 Post subject: |
|
|
GeNtlE
Quote: | создать файл в памяти |
Это как? |
|
Back to top |
|
![](templates/subSilver/images/spacer.gif) |
GeNtlE
Joined: 16 Dec 2004 Posts: 141 Location: Россия, Чита
|
(Separately) Posted: Fri Nov 18, 2005 18:37 Post subject: |
|
|
Если бы я знал, как это делается скриптами - не стал бы спрашивать, но если существует возможность использования WinAPI'шных функций из скриптов, то, я думаю, это возможно...
Вот, например, у нас есть CreateFileMapping... И есть вот MSDN'а кусок.
С этим можно что-нибудь сделать? На обычных языках - реализуемо. На скриптах - не знаю,.. но хочу разобраться - Интересно. |
|
Back to top |
|
![](templates/subSilver/images/spacer.gif) |
Volniy
![](images/avatars/65827031443a3855e2fc1.gif)
Joined: 15 Dec 2004 Posts: 585 Location: Местный
|
(Separately) Posted: Fri Nov 18, 2005 21:03 Post subject: |
|
|
Quote: | Volniy
Неужели действительно придеться так сделать? ![Wink](images/smiles/icon_wink.gif) |
Ну что ж это такое, в самом-то деле . На старом форуме SAM "меня без меня женил", а сча и вы туда же, блин.
У меня есть (был, по крайней мере, может уже и не пашет) свой аккаунт, мне SAM его выбил когда-то. Если хоть с десяток человек считает, что есть смысл выкладывать - я выложу. Насчет дальнейшей поддержки - фиг его знает, уж как получится., не могу гарантировать, что уделю этому проекту много времени.
ЗЫ А 10-ую бетку я уже где-нибудь тут светил?
==
Пардон, забыл я по теме высказаться. imho реестр вполне подойдет для обмена информацией между скриптами, чтение и запись в него это фактически чтение из/в память. Тоесть это будет очень быстро. А чтобы не грузить бесконечным циклом проц, надо поставить в цикле задержку между проверками
Есть одна проблема: при ошибке работы скрипта в Реестре может остаться значение и оно будет мешать дальнейшей работе скриптов. Тоесть наадо не забыть это значение инициализировать/удалить. |
|
Back to top |
|
![](templates/subSilver/images/spacer.gif) |
Lev
![](images/avatars/39627962044ca40a2d05ec.gif)
Joined: 02 Mar 2005 Posts: 392
|
(Separately) Posted: Sat Nov 19, 2005 00:27 Post subject: |
|
|
Quote: | Если хоть с десяток человек считает, что есть смысл выкладывать - я выложу | первый нах выкладывай
Даже если сам TCHelper заморожен, то как появится страничка, так пойдет новая волна обсуждений, пойдут новые скрипты. Буржуи тоже скриптов подкинут. В общем, всем польза будет.
А какие предубеждения против выкладывания?
Quote: | А 10-ую бетку я уже где-нибудь тут светил? | Не видел, ждём-с |
|
Back to top |
|
![](templates/subSilver/images/spacer.gif) |
_Elzor
Joined: 31 Aug 2005 Posts: 33 Location: Орск
|
(Separately) Posted: Sat Nov 19, 2005 00:38 Post subject: |
|
|
Второй.
Скрипты сам использую редко, но иногда хочется что-нибуть интегрить в TC... |
|
Back to top |
|
![](templates/subSilver/images/spacer.gif) |
Volniy
![](images/avatars/65827031443a3855e2fc1.gif)
Joined: 15 Dec 2004 Posts: 585 Location: Местный
|
(Separately) Posted: Sat Nov 19, 2005 01:46 Post subject: |
|
|
Lev wrote: | А какие предубеждения против выкладывания? |
Да сами знаете, сколько всякого сомнительного там выкладывается. Так еще и мою недоделанную штуковину туда? Опять-же, про буржуев, им же надо на Английском доку написать, а это как-никак не "My name is Nick. I am eleven years old etc". Хотя, может и обойдутся они без доки
==
Бессоница, конечно, вещь паршивая, но иногда имеет и положительный побочный эффект. Взял вот, да и выложил десятую бетку на wincmd.ru. |
|
Back to top |
|
![](templates/subSilver/images/spacer.gif) |
Batya
![](images/avatars/14956831694439fb6161cdd.gif)
Joined: 15 Dec 2004 Posts: 2218 Location: Москва, Россия
|
(Separately) Posted: Mon Nov 21, 2005 10:48 Post subject: |
|
|
Урааа!!!
Это случилось!
Я думаю, понятно, что мой голос также можно приплюсовать
==
ОК. Значит буду реестр читать/писать.
А насчет Sleep - это понятно. У меня изначально это было. Просто это не относится к моему вопросу, поэтому не писал.
==
Volniy
Еще раз спасибо за Helper! |
|
Back to top |
|
![](templates/subSilver/images/spacer.gif) |
Batya
![](images/avatars/14956831694439fb6161cdd.gif)
Joined: 15 Dec 2004 Posts: 2218 Location: Москва, Россия
|
(Separately) Posted: Mon Nov 21, 2005 13:08 Post subject: |
|
|
Volniy
А в какой ветке реестра корректней создать параметр? (Не хочеться создавать где попало.) |
|
Back to top |
|
![](templates/subSilver/images/spacer.gif) |
Volniy
![](images/avatars/65827031443a3855e2fc1.gif)
Joined: 15 Dec 2004 Posts: 585 Location: Местный
|
(Separately) Posted: Mon Nov 21, 2005 13:51 Post subject: |
|
|
Batya wrote: | Volniy
А в какой ветке реестра корректней создать параметр? (Не хочеться создавать где попало.) |
Я думаю, что это без разницы. Ну вот хотя бы и в HKEY_CURRENT_USER\Software\Microsoft\Windows Scripting Host\Settings. Только имя параметру оригинальное придумай на всякий случай ![Wink](images/smiles/icon_wink.gif) |
|
Back to top |
|
![](templates/subSilver/images/spacer.gif) |
|