Название процесса с иконкой в ListView

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by kakeolala, 10 Jun 2011.

  1. kakeolala

    kakeolala Banned

    Joined:
    13 Jul 2010
    Messages:
    118
    Likes Received:
    2
    Reputations:
    0
    В общем надо следующее:
    Вводя в Edit1 название какого либо активного процесса ( firefox.exe, aimp2.exe и т.д. )
    Этот процесс добавлялся вместе с иконкой процесса.

    В интернете одни галимые ниочемные примеры.
     
  2. slesh

    slesh Elder - Старейшина

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    2 kakeolala
    >>> В интернете одни галимые ниочемные примеры.

    А знаешь почему в инете одни галимые примеры? Потому что ты млять нехера не знаешь и при этому не хочешь даже хоть чуточку думать, полагаясь что всё уже за тебя написано. Любою операцию разложи на более мелкие и будет тебе результат.

    Лично для твоей задачи более мелкие подзадачи такие:
    1) ввел название процесса в edit и нажал кнопку - ничего сложного в получении текста из edit нету
    2) чтобы получить иконку процесса, надо её взять из самого файла процессе
    3) чтобы найти полный путь к файлу процесса надо получить список процессов и в нем искать.
    4) когда нашел полный путь к файлу, то извлекаешь из него иконку и готово.
    5) готовую иконку и название процесса уже кидаешь куда хочешь.

    Если по подробнее, то
    1) получаем список процессов - CreateToolhelp32Snapshot
    2) перебираем процессы в списке - Process32First + Process32Next
    3) ищем в именах процессов тот текст что в edit (в структуре описания процесса это szExeFile)
    4) зная szExeFile грузим иконку через ExtractIcon
    5) зная хендл иконки + полный путь до процесса выводим всё это. (иконку возможно нужно будет добавить в ImageList)

    Вот и всё, по всем функциям в MSDN есть отличное описание и нормальные примеры. А гугль вообще просто переполнен информацией.

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