Можно ли вывести список процессов?
И снова здравствуйте CyberForum’цы,у меня возник вопрос,которому разумного решения я не нашел.
Так вот мне надо вывести список процессов Windows,что бы показывал процессы диспетчера задач,на что вывести мне все равно,но собираюсь в JTextArea.
Есть ли способ считать процессы?
Если есть,то как опишите.
Добавлено через 17 часов 29 минут
Никто не знает?!
Добавлено через 32 секунды
Никто не знает?
Можно ли в ListBox поместить список процессов?
Можно ли в ListBox поместить список процессов? И как это сделать?
Вывести список запущенных процессов
Нужно вывести список запущенных процессов, задание вроде не сложное, но его нужно сделать не в.
Вывести список процессов в TextBox
Хочу вывести список процессов в textBox. знаю что можнр в listBox, но интересует именно вывод в.
Вывести список процессов в listView
всем привет!) как мне вывести список процессов в listView? foreach (System.Diagnostics.Process.
Решение
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.
Вывести список запущеных процессов в системе
програма должна вывести список запущеных процессов в системе. Buil работает, но не запускается exe.
Вывести в консоль список запущенных процессов
Доброго времени суток! Появился такой вот вопрос..как на ассемблере (masm/fasm) вывести в консоль.
Вывести список запущеных процессов в системе Windows на С++
Уважаемые друзья, нужна работающая программа которая выводит все процессы в системе ну и информацию.
Вывести список процессов, выполняемых другими пользователями
Каким образом можно вывести список процессов,выполняемых другими пользователями?Помогите.
Как получить список текущих открытых windows / процессов с Java?
Кто-нибудь знает, как получить текущий открытый windows или процесс локальной машины с помощью Java?
Я пытаюсь сделать следующее: перечислить текущую открытую задачу, windows или процесс открыт, как в Windows Taskmanager, но с использованием многоплатформенного подхода-используя только Java, если это возможно.
14 ответов
Я новичок в Cocoa и хочу знать, как я могу получить список всех открытых windows. Я не говорю о запуске программ, так как это было бы легкой задачей. Я хочу перечислить windows, например, если у меня есть Предварительный просмотр с открытым 10 pdf, моя программа должна иметь возможность получить.
Я только начинаю с C#. мне удалось получить список запущенных процессов и получить конкретный процесс ID. Может ли кто-нибудь сказать мне, как получить список файлов, открытых данным процессом ID?
Это еще один подход к разбору списка процессов из команды » ps-e «:
Если вы используете Windows, то вам следует изменить строку: «Process p = Runtime.getRun. » и т. д. (3-я строка), для того, что выглядит так:
Надеюсь, эта информация поможет!
Наконец, с Java 9+ это возможно с ProcessHandle :
На Windows есть альтернатива с использованием JNA :
В Windows 7 можно ли получить список всех открытых рабочих столов windows из командной строки? Я знаю, что можно получить список всех запущенных процессов из командной строки, но я хочу знать, можно ли также получить список открытых windows.
Мне нужно обработать WM_QUERYENDSESSION в моем приложении qt. Поскольку WM_QUERYENDSESSION получает только QApplication, поэтому я хочу получить список всех открытых windows моего приложения, чтобы решить winEventFilter результат. Как я могу его получить?
Единственный способ, который я могу придумать, — это вызвать приложение командной строки, которое выполняет эту работу за вас, а затем экранировать вывод (например, ps Linux и список задач Window).
К сожалению, это будет означать, что вам придется написать несколько процедур синтаксического анализа, чтобы прочитать данные из обоих.
YAJSW (еще одна оболочка службы Java) выглядит так, как будто она имеет реализации на основе JNA своего интерфейса org.rzo.yajsw.os.TaskList для win32, linux, bsd и solaris и находится под лицензией LGPL. Я не пробовал вызывать этот код напрямую, но YAJSW работает очень хорошо, когда я использовал его в прошлом, так что у вас не должно быть слишком много забот.
Вы можете легко получить список запущенных процессов с помощью jProcesses
Нет никакого нейтрального к платформе способа сделать это. В выпуске 1.6 Java был добавлен класс «Desktop», позволяющий переносить способы просмотра, редактирования, рассылки, открытия и печати URI-х. Возможно, этот класс когда-нибудь будет расширен для поддержки процессов, но я в этом сомневаюсь.
Если вы интересуетесь только процессами Java, вы можете использовать java.lang.management api для получения информации о потоке/памяти на JVM.
Для windows я использую следующее:
Это может быть полезно для приложений с пакетом JRE: I scan for the folder name that i’m running the application from: so if you are application is executing from:
затем вы можете узнать, работает ли он уже в J9, по:
Использование кода для разбора ps aux для linux и tasklist для windows — ваши лучшие варианты, пока не появится что-то более общее.
Linux также может передавать результаты от ps aux до grep , что сделает обработку/поиск быстрой и легкой. Я уверен, что вы можете найти что-то подобное и для windows.
Приведенная ниже программа будет совместима только с версией Java 9+ .
Чтобы получить информацию CurrentProcess,
Для всех запущенных процессов,
Мы должны использовать process.getOutputStream.close() , иначе он будет заблокирован в while loop.
TASKLIST /v /FI «STATUS eq running» /FO «CSV» /FI «имя пользователя eq LHPL002\soft» /FI «MEMUSAGE gt 10000″ /FI » Windowtitle ne N/A» /NH
Это мой код для функции, которая получает задачи и получает их имена, а также добавляет их в список, к которому можно получить доступ из списка. Он создает временные файлы с данными, читает файлы и получает имя задачи с суффиксом .exe, а также упорядочивает файлы, которые будут удалены, когда программа выйдет с System.exit(0), он также скрывает процессы, используемые для получения задач, а также java.exe, чтобы пользователь не мог случайно убить процесс, который запускает программу все вместе.
Похожие вопросы:
У кого-нибудь есть идея, как получить из Xserver список всех открытых windows?
Есть ли способ получить список названий всех открытых windows в KDE из CLI?
Я ищу консольное приложение (где я могу передать вывод в txt-файл), которое дает мне список всех текущих процессов и файлов, открытых каждым процессом. Инструмент также должен работать, когда у.
Я новичок в Cocoa и хочу знать, как я могу получить список всех открытых windows. Я не говорю о запуске программ, так как это было бы легкой задачей. Я хочу перечислить windows, например, если у.
Я только начинаю с C#. мне удалось получить список запущенных процессов и получить конкретный процесс ID. Может ли кто-нибудь сказать мне, как получить список файлов, открытых данным процессом ID?
В Windows 7 можно ли получить список всех открытых рабочих столов windows из командной строки? Я знаю, что можно получить список всех запущенных процессов из командной строки, но я хочу знать, можно.
Мне нужно обработать WM_QUERYENDSESSION в моем приложении qt. Поскольку WM_QUERYENDSESSION получает только QApplication, поэтому я хочу получить список всех открытых windows моего приложения, чтобы.
Я хочу получить отчет обо всех открытых explorer windows заголовках и текущих путях. Текущая часть пути этой проблемы-это ответ здесь с C#,, но я хочу это для powershell и не знаю, как его.
Я не могу найти, где взять количество текущих открытых осколков. Я хочу сделать мониторинг, чтобы избежать подобных случаев: this cluster currently has [999]/[1000] maximum shards open Я могу.
Получить список процессов в Windows с помощью безопасного набора символов
Этот пост дает решение для получения списка запущенных процессов под Windows. По сути, он делает:
затем читает ввод.
Он выглядит и работает отлично, но мне было интересно, есть ли вероятность того, что кодировка, используемая списком задач, может не быть кодировкой по умолчанию и что этот вызов может завершиться неудачей?
Например этот другой вопрос о другом исполняемом файле показывает, что это может вызвать некоторые проблемы.
Если это так, есть ли способ определить, какой должна быть соответствующая кодировка?
Может разбиться на две части:
Часть окон
Из java вы выполняете команду Windows – внешне для jvm в “Windows land”. Когда java Runtime класс выполняет команду windows, он использует DLL для консолей и поэтому появляется в окнах, как если бы команда выполнялась в консоли
В: Когда я запускаю C:\windows\system32\tasklist.exe в консоли, что такое кодировка символов ( “кодовая страница” в терминологии Windows)?
- команда “chcp” без аргумента дает номер активной кодовой страницы для консоли (например, 850 для Multilingual-Latin-1, 1252 для Latin-1). См. Кодовые страницы Microsoft Windows, Кодовые страницы Windows OEM, Windows Кодовые страницы ISO
Страница системного кода по умолчанию изначально настроена в соответствии с вашим языком системы (введите systeminfo, чтобы увидеть это или Панель управления → Регион и язык). - функция Windows OS/.NET getACP() также предоставляет эту информацию
Часть java:
Как декодировать поток байтов java с кодовой страницы Windows “x” (например, 850 или 1252)?
- полное сопоставление между номерами кодовых страниц Windows и эквивалентными именами символов java можно получить из здесь – Идентификаторы кодовой страницы (Windows)
- Однако на практике для достижения сопоставления можно добавить один из следующих префиксов:
“(нет) для ISO,” IBM “или” x-IBM “для OEM,” windows- “или” x-windows-” для Microsoft/Windows.
Например. ISO-8859-1 или IBM850 или windows-1252
Спасибо за Q! – Было весело.
Собственно, кодировка, используемая tasklist , всегда отличается от системного по умолчанию.
С другой стороны, вполне безопасно использовать значение по умолчанию, пока выход ограничен ASCII. Обычно исполняемые модули имеют только ASCII-символы в своих именах.
Итак, чтобы получить правильные строки, вам нужно преобразовать (ANSI) кодовую страницу Windows на страницу OEM-кода и передать последнее как charset на InputStreamReader .
Кажется, нет полного сопоставления между этими кодировками. Можно использовать следующее отображение:
Этот подход работал у меня с парами windows-1251 и IBM866 .
Чтобы получить текущую кодировку OEM, используемую Windows, вы можете использовать функцию GetOEMCP . Возвращаемое значение зависит от параметра Язык для не-Юникодовых программ на вкладке Административная в панели Регион и язык. Для внесения изменений требуется перезагрузка.
Первый используется не-Unicode-приложениями, запущенными в режиме графического интерфейса.
Последний используется консольными приложениями. Консольные приложения не могут отображать символы, которые не могут быть представлены в текущей кодировке OEM.
Так как tasklist – приложение в консольном режиме, его вывод всегда находится в текущей OEM-кодировке.
Для английских систем пара обычно Windows-1252 и CP850.
Как и в России, моя система имеет следующие кодировки: Windows-1251 и CP866.
Если я запишу вывод tasklist в файл, файл не сможет правильно отображать кириллические символы:
Я получаю ЏаЁўҐв вместо Привет (Hi!) при просмотре в Блокноте.
И µTorrent отображается как зTorrent .
Вы не можете изменить кодировку, используемую tasklist .
Однако возможно изменить выходное кодирование cmd . Если вы передадите ему /u , он выведет все в кодировке UTF-16.
Размер echo.txt равен 4 байтам: два байта для Hi и два байта для новой строки ( \r и \n ).
Теперь размер echo.txt равен 8 байтам: каждый символ представлен двумя байтами.
Почему бы не использовать Windows API через JNA вместо процессов нереста? Вот так:
Я опубликовал аналогичный ответ в другом месте.
Существует намного лучший способ проверить запущенные процессы или даже запустить команду OS через java: Process и ProcessBuilder.
Что касается Charset, вы всегда можете узнать ОС о поддерживаемых кодировках и получить Encoder или Decoder в соответствии с вашими потребностями.
[Изменить]
Позвольте сломать его; нет никакого способа узнать, в какой кодировке байтов данной Строки, так что ваш единственный выбор – это получить эти байты, при необходимости сдвинуть порядок (если вы когда-либо находитесь в такой среде, где процесс может дать вам массив байты в разных порядках, используйте ByteBuffer для решения этой проблемы) и используйте несколько CharsetDecoders, поддерживаемых для декодирования байтов до разумного вывода.
Это слишком много, и вам нужно оценить, что данный вывод может быть в UTF-8, UTF-16 или любой другой кодировке. Но по крайней мере вы можете декодировать данный вывод с использованием одного из возможных Charsets, а затем попытаться использовать обработанный вывод для ваших нужд.
Поскольку мы говорим о процессе, выполняемом той же ОС, в которой работает JVM, вполне возможно, что ваш вывод будет в одном из кодировок Charset, возвращаемых методом availableCharsets().
How to get a list of current open windows/process with Java?
Does any one know how do I get the current open windows or process of a local machine using Java?
What I’m trying to do is: list the current open task, windows or process open, like in Windows Taskmanager, but using a multi-platform approach — using only Java if it’s possible.
14 Answers 14
This is another approach to parse the the process list from the command «ps -e«:
If you are using Windows, then you should change the line: «Process p = Runtime.getRun. » etc. (3rd line), for one that looks like this:
Hope the info helps!
Finally, with Java 9+ it is possible with ProcessHandle :
On Windows there is an alternative using JNA:
The only way I can think of doing it is by invoking a command line application that does the job for you and then screenscraping the output (like Linux’s ps and Window’s tasklist).
Unfortunately, that’ll mean you’ll have to write some parsing routines to read the data from both.
YAJSW (Yet Another Java Service Wrapper) looks like it has JNA-based implementations of its org.rzo.yajsw.os.TaskList interface for win32, linux, bsd and solaris and is under an LGPL license. I haven’t tried calling this code directly, but YAJSW works really well when I’ve used it in the past, so you shouldn’t have too many worries.
You can easily retrieve the list of running processes using jProcesses
There is no platform-neutral way of doing this. In the 1.6 release of Java, a «Desktop» class was added the allows portable ways of browsing, editing, mailing, opening, and printing URI’s. It is possible this class may someday be extended to support processes, but I doubt it.
If you are only curious in Java processes, you can use the java.lang.management api for getting thread/memory information on the JVM.
For windows I use following:
This might be useful for apps with a bundled JRE: I scan for the folder name that i’m running the application from: so if you’re application is executing from:
then you can find if it’s already running in J9, by:
Using code to parse ps aux for linux and tasklist for windows are your best options, until something more general comes along.
Linux can pipe the results of ps aux through grep too, which would make processing/searching quick and easy. I’m sure you can find something similar for windows too.
The below program will be compatible with Java 9+ version only.
To get the CurrentProcess information,
For all running processes,
We have to use process.getOutputStream.close() otherwise it will get locked in while loop.
TASKLIST /v /FI «STATUS eq running» /FO «CSV» /FI «Username eq LHPL002\soft» /FI «MEMUSAGE gt 10000» /FI «Windowtitle ne N/A» /NH