Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Win Api
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.10.2011, 22:40   #1
Alexander1205
Пользователь
 
Аватар для Alexander1205
 
Регистрация: 22.01.2011
Сообщений: 78
По умолчанию Диспетчер задач

Доброго времени суток, комрады! Есть такая задачка: Нужно отобразить диспетчер задач в ListBox, и попытаться кнопками открыть, либо завершить тот или иной процесс. В Edit должен отображаться путь процесса. В моем коде кроется какая-то ошибка, процессы даже не заполняют окно. В чем же проблема?


Код:
#include <Windows.h>
#include<WindowsX.h>
#include<TlHelp32.h>
#include"resource.h"

HINSTANCE hInstance;

void OnHScroll(HWND hWnd,HWND hCTRL,UINT Code, int Pos);
void OnClose(HWND hWnd);
void OnCommand(HWND hWnd,UINT id,HWND hCtrl,UINT CodeNotify);
BOOL CALLBACK DlgProc (HWND, UINT, WPARAM, LPARAM);
BOOL OnInitDialog(HWND hWnd, HWND hfocus,WPARAM wParam);

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hInstPrev, LPSTR CmdLine, int CmdShow)
{

	return DialogBox(hInstance,(LPCWSTR)IDD_DIALOG1,NULL,DlgProc);
}

BOOL CALLBACK DlgProc (HWND hWnd, UINT uMessage, WPARAM wParam, LPARAM lParam)
{
	switch(uMessage)
	{
		HANDLE_MSG(hWnd,WM_CLOSE,OnClose);
		HANDLE_MSG(hWnd,WM_VSCROLL,OnHScroll);
		HANDLE_MSG(hWnd,WM_COMMAND,OnCommand);
	}
	return FALSE;
}
	

void OnCommand(HWND hWnd,UINT id,HWND hCtrl,UINT CodeNotify)
{	
    if(id == IDC_BUTTON1) 
	{        
          TCHAR buf[128];
          GetDlgItemText(hWnd, IDC_BUTTON1, buf, sizeof(buf));          
    }
	
}
		
	
	BOOL OnInitDialog(HWND hWnd, HWND hfocus,WPARAM wParam)

   {

	HANDLE h;
	h = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
	PROCESSENTRY32 pi32;
	memset(&pi32,0,sizeof(PROCESSENTRY32));
	pi32.dwSize = sizeof(PROCESSENTRY32);

	if(Process32First(h,&pi32))
	{	
		while(Process32Next(h,&pi32))
		{
			SendDlgItemMessage(hWnd, IDC_LIST1, LB_ADDSTRING, 0, (LPARAM)(TCHAR*)pi32.szExeFile );
			
		}
	}
	return TRUE;
    }

		void OnClose(HWND hWnd)
	{
		EndDialog(hWnd,0);
	}
Alexander1205 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
диспетчер задач FIST-FROSCH Операционные системы общие вопросы 5 16.07.2010 11:49
Диспетчер задач Rio309 Компьютерное железо 12 15.09.2009 08:28
Диспетчер задач NecRoMat Свободное общение 2 03.08.2008 16:55
диспетчер задач Istergul Общие вопросы Delphi 3 10.02.2008 00:23