Модераторы: korob2001, ginnie

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отслеживание запущенных процессов windows, Как следить за нужными процессами 
:(
    Опции темы
dva300
Дата 14.6.2010, 17:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 220
Регистрация: 17.2.2010
Где: Москва

Репутация: -1
Всего: 1



Цитата(birdfree @ 14.6.2010,  15:28)
Уважаемый shamber, как я уже говорил в перле я крайне плохо понимаю, если вас не затруднит не могли бы привести пример.

birdfree вы не злитесь. просто вы в данном случае меня, например, поймите - попахивает тем что нужно просто взять и написать программу за вас. а это не дело. 
если вы начинающий то это скорее плюс нежели минус - стремитесь что-то новое постичь. задачи достаточно простые да и направление вам указывают верное.

--------------------
Участник движения Культура Вождения
PM   Вверх
shamber
Дата 14.6.2010, 19:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1422
Регистрация: 5.9.2006
Где: Россия

Репутация: 17
Всего: 18



Tkx это ужос smile блин попытался запустить скрипт не вышло smile отвык я от них
PM MAIL Jabber   Вверх
dva300
Дата 14.6.2010, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 220
Регистрация: 17.2.2010
Где: Москва

Репутация: -1
Всего: 1



Цитата(shamber @ 14.6.2010,  19:42)
Tkx это ужос smile блин попытался запустить скрипт не вышло smile отвык я от них

 smile 
и это все для рисования одного окошка 

--------------------
Участник движения Культура Вождения
PM   Вверх
shamber
Дата 14.6.2010, 21:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1422
Регистрация: 5.9.2006
Где: Россия

Репутация: 17
Всего: 18



я проверить не смог, а вы попытайтесь, особенно если у вас окошко нормально рисуется. Перед вызовом my @info = $pi->GetProcInfo(); просто добавьте бесконечный цикл while(1). Это позволит вам продолжить поиск нужного окошка.
PM MAIL Jabber   Вверх
birdfree
Дата 14.6.2010, 21:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 12.12.2008

Репутация: 1
Всего: 1



shamber, я пробовал ставить бесконечный цикл не получилось. По этому и обратился зп помощью.
dva300, я понимаю что это выглядит не очень хорошо, я вам крайне благодарен за помощь. Я постараюсь в дальнейшем разбираться самостоятельно.  smile 
PM MAIL   Вверх
dva300
Дата 14.6.2010, 22:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 220
Регистрация: 17.2.2010
Где: Москва

Репутация: -1
Всего: 1



Цитата(birdfree @ 14.6.2010,  21:27)
shamber, я пробовал ставить бесконечный цикл не получилось. По этому и обратился зп помощью.
dva300, я понимаю что это выглядит не очень хорошо, я вам крайне благодарен за помощь. Я постараюсь в дальнейшем разбираться самостоятельно.  smile

birdfree когда видно что человек стремиться то и помогается легче. 
боритесь  я готов вам помогать 


Это сообщение отредактировал(а) dva300 - 14.6.2010, 22:12
--------------------
Участник движения Культура Вождения
PM   Вверх
birdfree
Дата 15.6.2010, 11:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 12.12.2008

Репутация: 1
Всего: 1



shamber, я пробовал ставить бесконечный цикл не получилось. По этому и обратился зп помощью.
dva300, я понимаю что это выглядит не очень хорошо, я вам крайне благодарен за помощь. Я постараюсь в дальнейшем разбираться самостоятельно.  smile 
PM MAIL   Вверх
dva300
Дата 15.6.2010, 14:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 220
Регистрация: 17.2.2010
Где: Москва

Репутация: -1
Всего: 1



Цитата(birdfree @ 15.6.2010,  11:45)
shamber, я пробовал ставить бесконечный цикл не получилось. По этому и обратился зп помощью.
dva300, я понимаю что это выглядит не очень хорошо, я вам крайне благодарен за помощь. Я постараюсь в дальнейшем разбираться самостоятельно.  smile

а чего дважды то повторять ?  smile 

ниже код согласно твоих условий. пока будешь жать "Да" программа будет проверять наличие процесса в системе. Если процесс исчезнет - продолжиться выполнение программы. Нажмешь "Нет" - программа завершиться.

P.S. Извини. на Tkx сам перепишешь  smile  

Код

use strict;
use Win32::Process::Info;
use Tk;

 my $pi = Win32::Process::Info->new ();
 my $flag = 1;
 while($flag)
    {
    $flag = undef;
    my @info = $pi->GetProcInfo ();   
    foreach (@info)
        {
        while (my ($key,$value) = each(%$_))
            {
            if ($value =~ /excel/i)
                {
                my $mw = MainWindow->new();
                $mw->withdraw();

                my $ftp_warn = $mw->messageBox(
                -title   => 'Message',
                -message => "Excel found. Continue ?",
                -type    => 'YesNo',
                -icon    => 'question',
                );
                if ( $ftp_warn eq 'No' ) 
                    {
                    exit;
                    }
                else 
                    {
                    $flag = 1;
                    last;
                    }
                }
            }
        last if $flag;    
        }
    }
print "main programm....\n";    

--------------------
Участник движения Культура Вождения
PM   Вверх
birdfree
Дата 17.6.2010, 01:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 12.12.2008

Репутация: 1
Всего: 1



dva300, Спасибо вам большое, есче раз! 
Все оказалось просто, оказывается не умею пользоваться оператором last  smile  smile  smile 
Честно говоря, ту конструкцию что предложил, уважаемый dva300, я решил использовать с самого начала, я просто не умею пользоваться last  smile 

Это сообщение отредактировал(а) birdfree - 17.6.2010, 01:55
PM MAIL   Вверх
dva300
Дата 17.6.2010, 13:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 220
Регистрация: 17.2.2010
Где: Москва

Репутация: -1
Всего: 1



Цитата(birdfree @ 17.6.2010,  01:16)
dva300, Спасибо вам большое, есче раз! 
Все оказалось просто, оказывается не умею пользоваться оператором last  smile  smile  smile 
Честно говоря, ту конструкцию что предложил, уважаемый dva300, я решил использовать с самого начала, я просто не умею пользоваться last  smile

 smile  согласно диалога выше проблема как мне думалось была в цикле while 
программа будет и без last работать (за комментируйте и проверьте) только немного не правильно потому как....

Объясню зачем нужен last - т.к. в задаче не стоит условие количественного определения запущенных процессов т.е. массив @info пробегать весь не надо
поэтому мы ввели признак $flag который станет правдой как только первое упоминание об интересующих нас процессах будет найдено. оно же есть условие выхода и из глобального цикла while.
как только значение найдено - выходим из циклов и обновляем массив @info новыми данными и повторяем все заново.
 
как видите цикл foreach и вложенный while по хешам можно и не прерывать - просто придется еще пару раз нажать на кнопку "Далее"
хотя это естественно не правильно потому как процессов в системе больше нет. для этого и нужен last.

--------------------
Участник движения Культура Вождения
PM   Вверх
birdfree
Дата 17.6.2010, 13:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 12.12.2008

Репутация: 1
Всего: 1



Цитата(dva300 @ 17.6.2010,  13:28)

Объясню зачем нужен last - т.к. в задаче не стоит условие количественного определения запущенных процессов т.е. массив @info пробегать весь не надо
поэтому мы ввели признак $flag который станет правдой как только первое упоминание об интересующих нас процессах будет найдено. оно же есть условие выхода и из глобального цикла while.
как только значение найдено - выходим из циклов и обновляем массив @info новыми данными и повторяем все заново.
 
как видите цикл foreach и вложенный while по хешам можно и не прерывать - просто придется еще пару раз нажать на кнопку "Далее"
хотя это естественно не правильно потому как процессов в системе больше нет. для этого и нужен last.

Вот у меня как раз в этом и была проблема, что я не мог сделать выход из цикла, все срабатывало но из цикла он не выходил. Большое спасибо! 
PM MAIL   Вверх
dva300
Дата 17.6.2010, 14:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 220
Регистрация: 17.2.2010
Где: Москва

Репутация: -1
Всего: 1



Цитата

Большое спасибо!

Большое пожалуйста  smile 

что хоть за задача была ? а то мы как китайские программисты - пишем часть не понимая что есть целое smile
P.S. надеюсь задача была не просто вывести кнопку на экран  smile 
--------------------
Участник движения Культура Вождения
PM   Вверх
birdfree
Дата 17.6.2010, 18:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 12.12.2008

Репутация: 1
Всего: 1



Программа вытаскивала из 1с данные потом преобразовывала, туда добавлялись, данные из exel, в итоге все выкладывалось по фтп на сервера, в общем то это все автоматизированно, графический интерфейс создан для отлова ошибок при работе с отображением у оператора на экране ))) ВОт такая вот не хитрая программа )) 
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0829 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.