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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.04.2008, 21:15   #1
N!ckeL
Форумчанин
 
Регистрация: 29.03.2008
Сообщений: 300
По умолчанию 2 вопроса по Delphi

Всем привет, буду короток:
1) Как можно открыть Мой компьютер програмно, допустим по нажатию кнопки?
2) Какую команду послать Пуску (Shell_TrayWnd), что бы эмулировать нажатие на него? Допустим я пишу:
Код:
var
 tray, pusk:hwnd;
begin
 tray:=findwindow('Shell_TrayWnd', nil);
 Pusk:=FindWindowEx(Tray, 0, 'Button', nil);
 SendMessage(pusk, {тип команды и т. д.});
end;
Карп преодолевший водопад становится драконом.
N!ckeL вне форума Ответить с цитированием
Старый 30.04.2008, 14:57   #2
Greblin
Меркантильный кю
Участник клуба
 
Аватар для Greblin
 
Регистрация: 02.02.2008
Сообщений: 1,001
По умолчанию

2.
Код:
SendMessage(Self.Handle, WM_SYSCOMMAND, SC_TASKLIST, 0);
Росли вроде умными, выросли дурнями... (c)А.Васильев
Greblin вне форума Ответить с цитированием
Старый 30.04.2008, 15:22   #3
N!ckeL
Форумчанин
 
Регистрация: 29.03.2008
Сообщений: 300
По умолчанию

Спасибо Greblin, а по поводу первого вопроса никто не знает? Мой Компьютер вроде не папка, но как-то его же запустить?
Карп преодолевший водопад становится драконом.
N!ckeL вне форума Ответить с цитированием
Старый 30.04.2008, 15:41   #4
Карась
Участник клуба
 
Аватар для Карась
 
Регистрация: 26.10.2007
Сообщений: 1,244
По умолчанию

Цитата:
Сообщение от N!ckeL Посмотреть сообщение
Спасибо Greblin, а по поводу первого вопроса никто не знает? Мой Компьютер вроде не папка, но как-то его же запустить?

Надо только понять, что этим должен заниматься проводник. Сообственно его и заставить сделать это:

ShellExecute(0, nil, 'explorer.exe', '/n,', nil, 1);

+ ShellAPI
Умом Россию не понять, пока не выпито ноль пять,
А если выпито ноль пять всё делом кажется не хитрым,
Попытка глубже понимать уже попахивает литром...
Карась вне форума Ответить с цитированием
Старый 30.04.2008, 15:55   #5
_Dmitry
Участник клуба
 
Аватар для _Dmitry
 
Регистрация: 02.09.2007
Сообщений: 1,193
По умолчанию

Sorry, прошу удалить сообщение

Последний раз редактировалось _Dmitry; 30.04.2008 в 15:59.
_Dmitry вне форума Ответить с цитированием
Старый 30.04.2008, 17:12   #6
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

Цитата:
Сообщение от N!ckeL Посмотреть сообщение
1) Как можно открыть Мой компьютер програмно, допустим по нажатию кнопки?
Код:
#include <windows.h>
#include <shlobj.h>

int main()
{
	LPITEMIDLIST		pidl = NULL;
	SHELLEXECUTEINFO	shei;

	SHGetSpecialFolderLocation(NULL, CSIDL_DRIVES, &pidl);	// <----------

	RtlZeroMemory		(&shei, sizeof(SHELLEXECUTEINFO));
	shei.cbSize		= sizeof(SHELLEXECUTEINFO);
	shei.fMask		= SEE_MASK_IDLIST;						// <----------
	shei.lpIDList		= pidl;
	shei.lpVerb		= TEXT("open");
	shei.nShow		= SW_SHOWNORMAL;
	
	ShellExecuteEx(&shei);
	return 0;
}
B_N вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Два тупых вопроса. proglamer Общие вопросы Delphi 2 10.04.2008 07:12
Два вопроса Никки Общие вопросы Delphi 2 19.01.2008 21:39
Два простых вопроса Relrin Общие вопросы Delphi 3 28.12.2007 16:00
три вопроса по ListView Scorpeon Компоненты Delphi 1 05.11.2007 22:40