PDA

Показать полную графическую версию : Окно программы поверх всех


Страниц : [1] 2

R.i.m.s.k.y.
12-09-2012, 14:53
Добрый день!

Подскажите пожалуйста, можно каким-то образом запустить, программу, к примеру XBMC.exe, чтобы ее окно оставалось поверх всех окон.
Если да то как?
Неважно на каком скрипте, я все равно нуб в PS WSH ETC.
Заранее спасибо.

_________
XBMC.exe параметр alwaysontop=yes игноррирует в половине случаев.

Kazun
12-09-2012, 15:47
Как то пользовался - http://www.labnol.org/software/tutorials/keep-window-always-on-top/5213/ вызов функции по Ctrl+Space

R.i.m.s.k.y.
12-09-2012, 17:14
Kazun, спасибо, но немножко не то.
XBMC это медиаоболочка, запускается всегда под чужим окном (тоталом, мозиллой и тд) не взирая на параметр alwaysontop=yes
Вставать с дивана чтобы выделить XBMC и нажать Ctrl+Space потребует больше калорий чем щелкнуть мышкой.
Требуется скрипт который запускал бы прогу поверх всех. Треевую мелочь для отслеживания процессов я и не чаю найти.

Iska
12-09-2012, 18:56
Треевую мелочь для отслеживания процессов я и не чаю найти. »
R.i.m.s.k.y., подобных приложений масса. Типичный пример — Automatically Resize Your Programs - AutoSizer (http://www.southbaypc.com/autosizer/):

http://img855.imageshack.us/img855/708/image00020120912185535.png

R.i.m.s.k.y.
18-09-2012, 16:50
Iska, спасибо, но не то.
Точнее работает, но не так: окно переносится поверх, но фокус не захватывает, кнопки пульта уходят другой (рандомной) проге
Да и скрипт таки пригодился бы, не XBMC единым...

Iska
18-09-2012, 19:01
Iska, спасибо, но не то.
Точнее работает, …»
R.i.m.s.k.y., что заказывали.

…работает, но не так: окно переносится поверх, но фокус не захватывает, »
Может, Вы где-то выше упоминали про это положение, да я пропустил?

R.i.m.s.k.y.
18-09-2012, 19:09
Может, Вы где-то выше упоминали про это положение, да я пропустил? »контекстом :)
Вставать с дивана чтобы выделить XBMC и нажать Ctrl+Space потребует больше калорий чем щелкнуть мышкой. »

Anonymоus
18-09-2012, 19:29
R.i.m.s.k.y., как вариант - использовать nircmd (http://www.nirsoft.net/utils/nircmd.zip) и сmd-скрипт, который с определённым интервалом будет проверять наличие процесса и устанавливать его окно активным и поверх всех.

@Echo Off
:: Имя процесса
Set Process=cports.exe
:: Интервал проверки, в секундах
Set Timeout=3

Set /A Timeout+=1
:Loop
TaskList /FO:CSV|Find /I "%Process%">nul&&(
nircmdc win settopmost process "%Process%" 1
nircmdc win focus process "%Process%"
nircmdc win activate process "%Process%"
)
Ping -n %Timeout% -w 1000 127.0.0.1>nul
GoTo Loop

Если нужно просто единоразово запустить и не отслеживать наличие процесса - то

nircmdc win settopmost process "program.exe" 1
nircmdc win focus process "program.exe"
nircmdc win activate process "program.exe"

R.i.m.s.k.y.
18-09-2012, 20:01
Anonymоus, хм, я пробовал через обычный nircmd без С
в чем разница между ними?
Сделал скрипт, буду проверять как "фокусируется", спасибо

Anonymоus
18-09-2012, 21:20
R.i.m.s.k.y., nircmdc - консольная версия nircmd. Почитать о разнице между ними можно в прилагаемом справочном файле.

R.i.m.s.k.y.
18-09-2012, 21:22
Anonymоus, так и nircmd тоже консольная, нет?
вычитал ровно одну разницу между nircmd/nircmdC - последняя ошибки и слова в консоль пишет. Еще есть?
Кстати пока пример работает. Ну и AutoSize тоже через раз удовлетворял.

Anonymоus
18-09-2012, 21:44
R.i.m.s.k.y., они обе принимают аргументы командной строки, но nircmdc - это именно что консольная версия. Отличий несколько, это и способ вывода ошибок (месседжбокс или stderr), как вы уже заметили, и специфичные только для консольной версии команды - к примеру, setconsolecolor, setconsolemode. Конкретно для этого скрипта абсолютно не принципиально, какую из двух утилит использовать, я использовал консольную версию, а что будете применять вы - ваш выбор.

crimes
23-08-2014, 17:20
А не кто не подскажет как сделать так:

Нужно запустить мини WPI с программами с ожиданием то есть так

start /wait .\GPInst.exe

а после не обходимо GPInst.exe вывести на передний план

nircmdc win settopmost process "GPInst.exe" 1
nircmdc win focus process "GPInst.exe"
nircmdc win activate process "GPInst.exe"

но всё это надо автоматизировать в cmd скрипт???
start /wait - ожидание обязательно но из за него не выполняются следующие команды,как быть?

Iska
23-08-2014, 17:34
Никак. Либо Вы ждёте внутри пакетного файла, либо нет.

Стучитесь в личку к автору: Пользователь: opel431 - Компьютерный форум OSzone.net (http://forum.oszone.net/member.php?userid=135753), дабы он добавил возможность задания свойства окна «Topmost» для своего приложения, например, параметром командной строки.

crimes
23-08-2014, 17:47
Никак. »

Это я и сам вижу,что не как.

Стучитесь в личку к автору »
Думаю в этом смысла нет,не кто там отвечать мне не будет.

Может другие утилиты есть,для вывода на передний план?

Есть другой вариант,но он в другой теме:
http://forum.oszone.net/showthread.php?t=286638

То есть нужно либо скрыть окно в той теме или сделать GPInst.exe по верх.

Iska
23-08-2014, 18:00
Это я и сам вижу,что не как. »
Не «не как», а «никак». Тогда зачем спрашиваете?

Думаю в этом смысла нет,не кто там отвечать мне не будет. »
А Вы попробуйте.

Может другие утилиты есть,для вывода на передний план? »
Ввиду сказанного я весьма сомневаюсь, что Вы действительно видите, что «никак». Ещё раз: либо Вы ждёте внутри пакетного файла и, соответственно, теряете возможность любого взаимодействия, либо не ждёте и можете управлять. Никакие утилиты не помогут при «start /wait app.exe» — они будут запущены только после завершения процесса «app.exe».

Я Вам показал, что нужно делать. Пишите автору.

crimes
23-08-2014, 19:47
Тогда зачем спрашиваете? »

Потому что всегда есть другой вариант! (Просто вы их не знаешь как и я!)

А Вы попробуйте. »

А вы отвечаете когда вам в личку пишут? (Только по честному?)
Практически все на этом форуме придерживаются одного пункта:

Не оказываю помощь по личке,для этого есть форум.

Будете отрицать эти слова?


--------------------------------------------------------
никак или не как - можно и так и так

"""Главное ― не как часто, а насколько ты готов…"""

Вы бы лучше решения так на ходили как к орфографии придираетесь.
Не нужно форум программировании превращать в форум правописания русского языка!
Я ценю помощь но ненужно писать всякий бред,не знаете лучше промолчите!

crimes
23-08-2014, 20:16
Решение.


echo ping 127.0.0.1 -n 4 ^>nul>>%SystemDrive%\process.cmd
echo nircmdc win settopmost process "GPInst.exe" ^1>>%SystemDrive%\process.cmd
echo nircmdc win focus process "GPInst.exe">>%SystemDrive%\process.cmd
echo nircmdc win activate process "GPInst.exe">>%SystemDrive%\process.cmd
echo exit>>%SystemDrive%\process.cmd

start "" %SystemDrive%\process.cmd

start /w "" .\GPInst.exe

Del /f /q %SystemDrive%\process.cmd

Iska
23-08-2014, 20:52
Потому что всегда есть другой вариант! (Просто вы их не знаешь как и я!) »
И я его уже Вам озвучил выше.

А вы отвечаете когда вам в личку пишут? (Только по честному?) »
Отвечаю.

В настоящее же время ситуация такая: некоторое время назад один товарисч напрочь забил мне остатки лимита сообщений своим спамом, одновременно плодя кучу несуразных сообщений в личку и на форум. Посему, пока не разберу и не удалю часть сообщений — написать мне в личку Вы не сможете.

Практически все на этом форуме придерживаются одного пункта:
Не оказываю помощь по личке,для этого есть форум.
Будете отрицать эти слова? »
Я не интересовался процентом людей, которые придерживаются непонятно откуда взятого Вами пункта (пункта чего?). Равным образом мне непонятна Ваша заинтересованность моим ответом по сделанному Вами утверждению, и каким боком сие относится к данной теме.

Вы бы лучше решения так на ходили как к орфографии придираетесь.
Не нужно форум программировании превращать в форум правописания русского языка!
Я ценю помощь но ненужно писать всякий бред,не знаете лучше промолчите! »
«находили» — пишется слитно, «форум программирования», «Я ценю помощь, но» — запятая, «не нужно» пишется раздельно.

Не Вам, коллега, решать, когда (и где) мне молчать, а когда — говорить. Вас что-то не устраивает — пишите обоснованную претензию, жалуйтесь модераторам или в Администрацию. Это их прерогатива.

Решение. »
Это не решение. Это костыль. Кривой. В надежде, что хватит указанного времени:
ping 127.0.0.1 -n 4
на запуск «GPInst.exe».

crimes
23-08-2014, 21:21
И я его уже Вам озвучил выше. »
Отвечаю. »

Вы может и отвечаете,а вот автор opel431 с какой стати мне будет отвечать да ещё мне что то делать?


Это не решение. Это костыль. Кривой. В надежде, что хватит указанного времени: »

Это хоть что то в отличие от вашего бреда!
Времени вполне хватает,хватит даже 2 сек,4 - что бы наверни ка,а вообще кому мало то можно и 99999999999999999 поставить.

«находили» — пишется слитно, «форум программирования», «Я ценю помощь, но» — запятая, «не нужно» пишется раздельно. »

Что касается орфографии - я уже говорил,что для этого есть другие форумы,но не здесь это обсуждать,это считается флудом и засорением темы!


И еще без обид но я сколько с вами переписывался заметил одну странную вещь - у вас что то с психикой,по моему она нарушена.




© OSzone.net 2001-2012