Проверка приложения на запуск
|
|
Rush | Дата: Суббота, 17 Октября 2009, 17:54 | Сообщение # 1 |
Обозреватель-консультант
Группа: Проверенные
Сообщений: 216
Репутация: 10
Награды: 1
Статус: Offline
| Наваять по старой памяти еще чего-нибудь, что ли? А то молодежь, судя по разговорам, не хочет... Придется довести до ума кое-что, что валяется в заброшенным уже по паре-тройке лет. Вот, для начала, чисто иллюстративный проект. Я его, вроде, на форуме когда-то кидал. Маленько сейчас поправил. Скачать: http://mmbuilder.ru/load/30-1-0-535
|
|
| |
YURIY | Дата: Суббота, 17 Октября 2009, 18:04 | Сообщение # 2 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| Quote (Rush) А то молодежь, судя по разговорам, не хочет... Да обнаглели совсем Спасибо за проект! Обязательно в нашу копилку Только вот в чём отличие второй кнопки от последней?
Вечная память Андрею Сергееву!
|
|
| |
Rush | Дата: Суббота, 17 Октября 2009, 18:09 | Сообщение # 3 |
Обозреватель-консультант
Группа: Проверенные
Сообщений: 216
Репутация: 10
Награды: 1
Статус: Offline
| Quote (YURIY) Только вот в чём отличие второй кнопки от последней? В принципе, никакой. Только тем, что проверка на второй не идет. Так, на всякий случай, оставил два варианта.
|
|
| |
YURIY | Дата: Суббота, 17 Октября 2009, 18:12 | Сообщение # 4 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| аа, точно. Я скрипт не додумался сравнить
Вечная память Андрею Сергееву!
|
|
| |
Dym | Дата: Суббота, 24 Октября 2009, 09:05 | Сообщение # 5 |
Поэт
Группа: Проверенные
Сообщений: 220
Репутация: 9
Награды: 7
Статус: Offline
| Quote (YURIY) Только вот в чём отличие второй кнопки от последней? Quote (Rush) Только тем, что проверка на второй не идет. Так, на всякий случай, оставил два варианта. Если имя файла с пробелом англ. – окей, а если русскими – последняя кнопка не закрывает. (Никакой атаки, чисто наблюдение.)
Вы не поверите, но я опять в строю – одним лишь взглядом свои мысли подаю! "Записи Дыма" <> "Лирика Дыма" <> "Помощник дурака" © Dym
Сообщение отредактировал Dym - Суббота, 24 Октября 2009, 09:08 |
|
| |
Rush | Дата: Суббота, 24 Октября 2009, 10:33 | Сообщение # 6 |
Обозреватель-консультант
Группа: Проверенные
Сообщений: 216
Репутация: 10
Награды: 1
Статус: Offline
| Quote (Dym) Если имя файла с пробелом англ. – окей, а если русскими – последняя кнопка не закрывает. А у меня закрывает. Можно имя?
|
|
| |
Dym | Дата: Суббота, 24 Октября 2009, 22:56 | Сообщение # 7 |
Поэт
Группа: Проверенные
Сообщений: 220
Репутация: 9
Награды: 7
Статус: Offline
| Quote (Rush) А у меня закрывает. Можно имя? Добрался до компа… Ты не поверишь! Имя файла «Философские размышления.exe»
Вы не поверите, но я опять в строю – одним лишь взглядом свои мысли подаю! "Записи Дыма" <> "Лирика Дыма" <> "Помощник дурака" © Dym
Сообщение отредактировал Dym - Суббота, 24 Октября 2009, 22:58 |
|
| |
Rush | Дата: Воскресенье, 25 Октября 2009, 10:26 | Сообщение # 8 |
Обозреватель-консультант
Группа: Проверенные
Сообщений: 216
Репутация: 10
Награды: 1
Статус: Offline
| Quote (Dym) Ты не поверишь! Имя файла «Философские размышления.exe» Да, закрывать с проверкой по тасклисту не хочет. Без проверки - спокойно. Проверка не срабатывает. Глючит тасклист, но это баги дяди Билли.
|
|
| |
Alex3A | Дата: Воскресенье, 25 Октября 2009, 11:55 | Сообщение # 9 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| А как такой вариант? «Философские_размышления.exe»Добавлено (25 Октябрь 2009, 11:55) ---------------------------------------------
Quote (Rush) но это баги дяди Билли. Что то там, у дяди Билли, вроде положено брать в кавычки "Философские размышления.exe", с не дядиным алфавитом и пробелами.
|
|
| |
Rush | Дата: Воскресенье, 25 Октября 2009, 11:59 | Сообщение # 10 |
Обозреватель-консультант
Группа: Проверенные
Сообщений: 216
Репутация: 10
Награды: 1
Статус: Offline
| Quote (Alex3A) Что то там, у дяди Билли, вроде положено брать в кавычки "Философские размышления.exe", с не дядиным алфавитом и пробелами. Ну так кавычки все присутствуют. Нет, тут другое...
|
|
| |
ponand | Дата: Воскресенье, 25 Октября 2009, 12:02 | Сообщение # 11 |
Поднаторевший
Группа: Проверенные
Сообщений: 83
Репутация: 0
Награды: 0
Статус: Offline
| Quote (Rush) Глючит тасклист, но это баги дяди Билли Quote (Alex3A) А как такой вариант? «Философские_размышления.exe» всеравно работать не будет даже если написать на латиницей привышена длина строки для проверки удалите несколько букв из имени и все заработает
Сообщение отредактировал ponand - Воскресенье, 25 Октября 2009, 12:11 |
|
| |
Alex3A | Дата: Воскресенье, 25 Октября 2009, 12:55 | Сообщение # 12 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| ponand, у дяди есть по этому поводу некие заморочки, где то в реестре.
|
|
| |
ponand | Дата: Воскресенье, 25 Октября 2009, 13:17 | Сообщение # 13 |
Поднаторевший
Группа: Проверенные
Сообщений: 83
Репутация: 0
Награды: 0
Статус: Offline
| А зачем временный файл при проверке запущено приложение или нет? можно ведь и без него
|
|
| |
Rush | Дата: Воскресенье, 25 Октября 2009, 13:39 | Сообщение # 14 |
Обозреватель-консультант
Группа: Проверенные
Сообщений: 216
Репутация: 10
Награды: 1
Статус: Offline
| Quote (ponand) А зачем временный файл при проверке запущено приложение или нет? можно ведь и без него Чтобы передать значение в проект.
|
|
| |
ponand | Дата: Воскресенье, 25 Октября 2009, 13:47 | Сообщение # 15 |
Поднаторевший
Группа: Проверенные
Сообщений: 83
Репутация: 0
Награды: 0
Статус: Offline
| Quote (Rush) Чтобы передать значение в проект А есле так? Code param$='WAIT,HIDE /C for /f %i in ('+CHR(39)+'tasklist ^| find /i /c '+appname$+CHR(39)+') do start "" '+t$+' "%i" ' добавив строку в скрипт "extappname" Code t$='"'+<SrcDir>+CBK_AppFileName+'"'
|
|
| |
Rush | Дата: Воскресенье, 25 Октября 2009, 14:18 | Сообщение # 16 |
Обозреватель-консультант
Группа: Проверенные
Сообщений: 216
Репутация: 10
Награды: 1
Статус: Offline
| Quote (ponand) А есле так? Что-то не пойму, зачем? Но спасибо тебе, ты натолкнул меня на мысль и я вспомнил, что в проект ведь передаются коды выполнения от запускаемого приложения. Надо будет прошерстить свои проекты и убрать ненужные(иногда) временные файлы. Поэтому в этой кнопке надо написать Code param$='WAIT,HIDE /C tasklist | find /c /i '+appname$ Run("cmd","param$") If (CBK_ReturnVal=0) Then msg$='Приложение '+appname$+' запущено.' Else msg$='Приложение '+appname$+' не запущено.' End Message("msg$","")
|
|
| |
ponand | Дата: Воскресенье, 25 Октября 2009, 14:47 | Сообщение # 17 |
Поднаторевший
Группа: Проверенные
Сообщений: 83
Репутация: 0
Награды: 0
Статус: Offline
| Quote (Rush) Что-то не пойму, зачем? я совсем еще новичек и незнал что Quote (Rush) в проект ведь передаются коды выполнения от запускаемого приложения поэтому использовал For и Start для передачи Quote (Rush) Поэтому в этой кнопке надо написать А как быть с длинными именами файлов?
|
|
| |
Dym | Дата: Воскресенье, 25 Октября 2009, 19:56 | Сообщение # 18 |
Поэт
Группа: Проверенные
Сообщений: 220
Репутация: 9
Награды: 7
Статус: Offline
| Одно имя файла – и такая дискуссия... Это не принципиально, но интересно. Я же говорил «чисто наблюдение». Случайно запустил первый попавшийся файл... Я тоже думаю: слишком длинное название (а может точно баги Билла? ).
Вы не поверите, но я опять в строю – одним лишь взглядом свои мысли подаю! "Записи Дыма" <> "Лирика Дыма" <> "Помощник дурака" © Dym
|
|
| |
Alex3A | Дата: Воскресенье, 25 Октября 2009, 20:33 | Сообщение # 19 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| Quote (Dym) (а может точно баги Билла? ). Ну это все исторически сложившиеся вещи, просто тогда никто не мог предсказать какие нужды возникнут в будущем, ну а когда клюнул жаренный петух, впопыхах забыли многое поправить, тем более что развитие шло совсем не так как подказывает логика, в основе его стояло бабло.
|
|
| |
Rush | Дата: Понедельник, 26 Октября 2009, 13:32 | Сообщение # 20 |
Обозреватель-консультант
Группа: Проверенные
Сообщений: 216
Репутация: 10
Награды: 1
Статус: Offline
| Quote (ponand) А как быть с длинными именами файлов? В принципе, это нехорошо, когда приходится в чем-то ограничивать функционал. Даже если баги чужие. Но мы можем найти другой путь. Сделаем такой финт - вместо Code param$='hide /C tasklist | find /i '+appname$+' && taskkill /f /im '+appname$+' /t' Run("cmd","param$") напишем Code param$='hide process where(name='+appname$+')terminate' Run("wmic","param$") Думаю, эта команда будет поддерживать длинные имена. По крайней мере, файл с именем "Философские размышления о том, почему дядя Билли не сделал поддержку длинных имен в тасклисте.exe" не вызвал у нее никаких отрицательных эмоций.
Сообщение отредактировал Rush - Понедельник, 26 Октября 2009, 14:43 |
|
| |
Alex3A | Дата: Понедельник, 26 Октября 2009, 14:09 | Сообщение # 21 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| Вот и на дядю есть проруха
|
|
| |
ponand | Дата: Понедельник, 26 Октября 2009, 20:47 | Сообщение # 22 |
Поднаторевший
Группа: Проверенные
Сообщений: 83
Репутация: 0
Награды: 0
Статус: Offline
| Quote (Rush) Думаю, эта команда будет поддерживать длинные имена есть одно маленькое но! в home версии Windows XP есле мне не изменяет память wmic по умолчанию не установлена
|
|
| |
YURIY | Дата: Понедельник, 26 Октября 2009, 20:50 | Сообщение # 23 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| Quote (ponand) в home версии Windows XP есле мне не изменяет память wmic по умолчанию не установлена Да, так и есть. Quote (http://onestyle.com.ua/txt.php?u=214) В стандартную поставку операционной системы Windows XP Professional входит программа командной строки wmic.exe, расположенная в каталоге %systemroot%\SYSTEM32\wbem (в Windows XP Home Editions данная программа отсутствует).
Вечная память Андрею Сергееву!
|
|
| |
Dym | Дата: Понедельник, 26 Октября 2009, 23:33 | Сообщение # 24 |
Поэт
Группа: Проверенные
Сообщений: 220
Репутация: 9
Награды: 7
Статус: Offline
| Quote (Rush) Философские размышления о том, почему дядя Билли не сделал поддержку длинных имен в тасклисте.exe" Все закрывается, отлично! И дядя Билли вновь обскакан… Помянем дядю неприлично, Употребив портвейна стакан…
Вы не поверите, но я опять в строю – одним лишь взглядом свои мысли подаю! "Записи Дыма" <> "Лирика Дыма" <> "Помощник дурака" © Dym
|
|
| |
Rush | Дата: Среда, 28 Октября 2009, 00:51 | Сообщение # 25 |
Обозреватель-консультант
Группа: Проверенные
Сообщений: 216
Репутация: 10
Награды: 1
Статус: Offline
| Значит надо просто убивать процесс, как и сделано на второй кнопке.
|
|
| |
YURIY | Дата: Среда, 25 Ноября 2009, 01:47 | Сообщение # 26 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| Опубликовано. Ссылка в первом посте.
Вечная память Андрею Сергееву!
|
|
| |
Rush | Дата: Воскресенье, 02 Мая 2010, 04:42 | Сообщение # 27 |
Обозреватель-консультант
Группа: Проверенные
Сообщений: 216
Репутация: 10
Награды: 1
Статус: Offline
| Привет ммв-шной братии! Давненько я не посещал это место. Чисто для дополнения. Чтобы проверить, запущен ли процесс с определенными параметрами комстроки, можно сделать так: Code app$='notepad.exe' par$='test.txt' p$='hide,wait /c wmic process where name="'+app$+'" get commandline | findstr /i /c:"'+par$+'">nul' Run("cmd","p$") If (CBK_ReturnVal) Then Message("Процесс с данными параметрами не запущен","CBK_ReturnVal") Else Message("Процесс с данными параметрами запущен","CBK_ReturnVal") End В данном случае мы узнаем, открыт ли файл test.txt блокнотом. PS. За новостями не слежу, поэтому извините, если уже по решенному хожу.
|
|
| |
YURIY | Дата: Воскресенье, 02 Мая 2010, 04:46 | Сообщение # 28 |
Злостный админ
Группа: Администраторы
Сообщений: 3018
Репутация: 71
Награды: 28
Статус: Offline
| Quote (Rush) Привет ммв-шной братии! Давненько я не посещал это место. И не говори А мы скучали, между прочим! Quote (Rush) За новостями не слежу, поэтому извините, если уже по решенному хожу Нет-нет, всё в порядке Полезное инфо, вдруг кому пригодится.
Вечная память Андрею Сергееву!
|
|
| |
Rush | Дата: Воскресенье, 02 Мая 2010, 06:47 | Сообщение # 29 |
Обозреватель-консультант
Группа: Проверенные
Сообщений: 216
Репутация: 10
Награды: 1
Статус: Offline
| Quote (YURIY) А мы скучали, между прочим! Ну тут и без меня народу достаточно. Скоро опять пропаду.
|
|
| |
Alex3A | Дата: Воскресенье, 02 Мая 2010, 12:30 | Сообщение # 30 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| Quote (Rush) Ну тут и без меня народу достаточно. Это тебе так кажется, пропадать то не надо!
|
|
| |