Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Системное программирование и WinAPI > Кординаты ярлыков на рабочем столе |
Автор: Riddik 11.10.2009, 21:25 | ||||||
Приветствую. Нужно узнать координаты ярлыков. Сначала получаю дескриптор рабочего стола, затем дочерних элементов:
Узнаю количество ярлыков:
И надо записать их координаты:
Все числа в файле одинаковые, нифига не записываются в p координаты значков. Что не так делаю? И второй вопрос: как происходит нумерация значков - просте слева направо и сверху вниз? Или если перемешать значки (переместить), то нумерация за ними сохраниться? |
Автор: uxoos 11.10.2009, 23:04 | ||||
Ты наверно тоже это тестовое задание выполняешь... Я остановился на том что при вызове в программе GetItemPosition(hWndw,1,(LPARAM)&pt) проводник windows7 перезапускается. Дескриптор рабочего стола находится верно.
Не знаю в чём дело:( 1 - хочется узнать что за окно такое "ProgMan" которому судя по функциям рабочий стол является внуком. 2 - почему проводник windows7 перезапускается? 3 - как правильно получить координаты иконы с рабочего стола. 4 - где можно почитать про подобные вещи. кстати
выполняется правильно. |
Автор: smoke_man 12.10.2009, 00:20 |
Вот исходник с пояснениями для сохранения позиций ярлыков. |
Автор: Riddik 12.10.2009, 00:54 |
uxoos, какое тест-задание ![]() smoke_man, благодарю! Там лезут в реестр и используют MFC. Неужто без реестра не обойтись. И все же, ведь должно ведь работать, из MSDN'а так вроде... SendMessage(desc, LVM_GETITEMPOSITION, i , (LPARAM)&p); Почему не присваивает координаты значка? |
Автор: smoke_man 12.10.2009, 08:30 |
Реестр они используют для сохранения расположения ярлыков. С использованием выше приведнного исходника накидал пример, который выводит координаты ярлыков. |
Автор: Riddik 12.10.2009, 10:39 |
smoke_man, большое спасибо! |
Автор: uxoos 12.10.2009, 21:14 | ||
Да. Наверно это правильно.. Вот содержательная часть исходника. Чтобы гугл нашёл и если файл удалят. Я просто так иногда ищу подобные решения и если, нахожу их в ссылках на удалённый файл исходника. А, ладно, не читайте это если не понравилось что прочитали. ![]()
|