Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Windows Script Host
Goto page 1, 2, 3 ... 23, 24, 25  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Batya



Joined: 15 Dec 2004
Posts: 2199
Location: Москва, Россия

Post (Separately) Posted: Fri Nov 18, 2005 14:49    Post subject: Windows Script Host Reply with quote

Хочеться начать тему для обмена опытом написания скриптов на Windows Script Host.
В который раз обращаюсь к Volniy - сделай, наконец, релиз своего TCWSHelp и выложи его на wincmd.ru! Это же супер продукт!

Помимо воззваний прошу совета.
Ситуация - запущен скрипт, который постоянно висит в памяти, для сканирования некоторого состояния в папке на диске. Как запуском другого скрипта корретно завершить работу первого?
В первом скрипте организован цикл
Code:
Do While MyKey
  ...
Loop

MyKey в цикле не меняется.
Как вторым скриптом заставить штатно выйти из цикла, а не убивать процесс?
Back to top
View user's profile Send private message
Lev



Joined: 02 Mar 2005
Posts: 392

Post (Separately) Posted: Fri Nov 18, 2005 15:06    Post subject: Reply with quote

Я бы просто читал MyKey или какое-другое условие прямо с диска или другого заведенного места. MyKey можно записать и вручную и скриптом
Code:
Do While MyKey
  ...
прочитать MyKey из файла
Loop

---
а насчет TCHelper'a - не ждать релиза, а в принудительном порядке завести страничку под него на сайте, выложить туда очередную бету и отдать пароль от странички Volniy, тем более, что сама бета там и так лежит.
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2199
Location: Москва, Россия

Post (Separately) Posted: Fri Nov 18, 2005 15:16    Post subject: Reply with quote

Lev
Quote:
прочитать MyKey из файла

ОК. Только это наверное не самое оптимальное решение с точки зрения ресурсозатрат (накладно каждый раз читать файл)?
Можно, конечно, еще в реестр писать. Но тоже не очень мне нравится - плодить лишний мусор.
У кого-нибудь еще есть идеи?
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2199
Location: Москва, Россия

Post (Separately) Posted: Fri Nov 18, 2005 15:19    Post subject: Reply with quote

Quote:
а насчет TCHelper'a - не ждать релиза, а в принудительном порядке завести страничку под него на сайте, выложить туда очередную бету и отдать пароль от странички Volniy, тем более, что сама бета там и так лежит.

Volniy
Неужели действительно придеться так сделать? Wink
Back to top
View user's profile Send private message
Lev



Joined: 02 Mar 2005
Posts: 392

Post (Separately) Posted: Fri Nov 18, 2005 15:42    Post subject: Reply with quote

Можно по-реже читать

Code:
Do While MyKey
counter=counter+1
  ...
if counter=мульён then
counter=0
прочитать MyKey из отведенного места
end if
Loop
Back to top
View user's profile Send private message
GeNtlE



Joined: 16 Dec 2004
Posts: 141
Location: Россия, Чита

Post (Separately) Posted: Fri Nov 18, 2005 16:23    Post subject: Reply with quote

А можно создать файл в памяти и читать MyKey оттуда?
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2199
Location: Москва, Россия

Post (Separately) Posted: Fri Nov 18, 2005 16:53    Post subject: Reply with quote

GeNtlE
Quote:
создать файл в памяти

Это как?
Back to top
View user's profile Send private message
GeNtlE



Joined: 16 Dec 2004
Posts: 141
Location: Россия, Чита

Post (Separately) Posted: Fri Nov 18, 2005 18:37    Post subject: Reply with quote

Если бы я знал, как это делается скриптами - не стал бы спрашивать, но если существует возможность использования WinAPI'шных функций из скриптов, то, я думаю, это возможно...
Вот, например, у нас есть CreateFileMapping... И есть вот MSDN'а кусок.
С этим можно что-нибудь сделать? На обычных языках - реализуемо. На скриптах - не знаю,.. но хочу разобраться - Интересно.
Back to top
View user's profile Send private message
Volniy



Joined: 15 Dec 2004
Posts: 585
Location: Местный

Post (Separately) Posted: Fri Nov 18, 2005 21:03    Post subject: Reply with quote

Quote:
Volniy
Неужели действительно придеться так сделать? Wink

Ну что ж это такое, в самом-то деле Sad. На старом форуме SAM "меня без меня женил", а сча и вы туда же, блин.
У меня есть (был, по крайней мере, может уже и не пашет) свой аккаунт, мне SAM его выбил когда-то. Если хоть с десяток человек считает, что есть смысл выкладывать - я выложу. Насчет дальнейшей поддержки - фиг его знает, уж как получится., не могу гарантировать, что уделю этому проекту много времени.

ЗЫ А 10-ую бетку я уже где-нибудь тут светил?

==

Пардон, забыл я по теме высказаться. imho реестр вполне подойдет для обмена информацией между скриптами, чтение и запись в него это фактически чтение из/в память. Тоесть это будет очень быстро. А чтобы не грузить бесконечным циклом проц, надо поставить в цикле задержку между проверками
Code:
WScript.Sleep 200

Есть одна проблема: при ошибке работы скрипта в Реестре может остаться значение и оно будет мешать дальнейшей работе скриптов. Тоесть наадо не забыть это значение инициализировать/удалить.
Back to top
View user's profile Send private message
Lev



Joined: 02 Mar 2005
Posts: 392

Post (Separately) Posted: Sat Nov 19, 2005 00:27    Post subject: Reply with quote

Quote:
Если хоть с десяток человек считает, что есть смысл выкладывать - я выложу
первый нах Smile выкладывай
Даже если сам TCHelper заморожен, то как появится страничка, так пойдет новая волна обсуждений, пойдут новые скрипты. Буржуи тоже скриптов подкинут. В общем, всем польза будет.
А какие предубеждения против выкладывания?
Quote:
А 10-ую бетку я уже где-нибудь тут светил?
Не видел, ждём-с
Back to top
View user's profile Send private message
_Elzor



Joined: 31 Aug 2005
Posts: 33
Location: Орск

Post (Separately) Posted: Sat Nov 19, 2005 00:38    Post subject: Reply with quote

Второй.
Скрипты сам использую редко, но иногда хочется что-нибуть интегрить в TC...
Back to top
View user's profile Send private message
Volniy



Joined: 15 Dec 2004
Posts: 585
Location: Местный

Post (Separately) Posted: Sat Nov 19, 2005 01:46    Post subject: Reply with quote

Lev wrote:
А какие предубеждения против выкладывания?

Да сами знаете, сколько всякого сомнительного там выкладывается. Так еще и мою недоделанную штуковину туда? Опять-же, про буржуев, им же надо на Английском доку написать, а это как-никак не "My name is Nick. I am eleven years old etc". Хотя, может и обойдутся они без доки Smile

==

Бессоница, конечно, вещь паршивая, но иногда имеет и положительный побочный эффект. Взял вот, да и выложил десятую бетку на wincmd.ru.
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2199
Location: Москва, Россия

Post (Separately) Posted: Mon Nov 21, 2005 10:48    Post subject: Reply with quote

Урааа!!!
Это случилось!
Я думаю, понятно, что мой голос также можно приплюсовать Smile

==
ОК. Значит буду реестр читать/писать.
А насчет Sleep - это понятно. У меня изначально это было. Просто это не относится к моему вопросу, поэтому не писал.

==
Volniy
Еще раз спасибо за Helper!
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2199
Location: Москва, Россия

Post (Separately) Posted: Mon Nov 21, 2005 13:08    Post subject: Reply with quote

Volniy
А в какой ветке реестра корректней создать параметр? (Не хочеться создавать где попало.)
Back to top
View user's profile Send private message
Volniy



Joined: 15 Dec 2004
Posts: 585
Location: Местный

Post (Separately) Posted: Mon Nov 21, 2005 13:51    Post subject: Reply with quote

Batya wrote:
Volniy
А в какой ветке реестра корректней создать параметр? (Не хочеться создавать где попало.)

Я думаю, что это без разницы. Ну вот хотя бы и в HKEY_CURRENT_USER\Software\Microsoft\Windows Scripting Host\Settings. Только имя параметру оригинальное придумай на всякий случай Wink
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Goto page 1, 2, 3 ... 23, 24, 25  Next
Page 1 of 25

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group