Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   [решено] Координаты иконок рабочего стола (http://forum.oszone.net/showthread.php?t=231499)

McLotos 28-03-2012 15:54 1888601

Координаты иконок рабочего стола
 
Где в реестре лежат координаты иконок рабочего стола?

Blast 28-03-2012 16:04 1888614

Не думаю, что они есть в реестре. Может расскажете в чем проблема и мы попробуем ее решить без волшебного реестра?
Могу предположить, что спасет маленькая утилита типа DesktopOK

McLotos 28-03-2012 16:09 1888619

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

Думаю нужно сделать какой-то скрипт, который в зависимости от разрешения экрана пропишет нужные значения в реестр

Blast 28-03-2012 16:11 1888623

McLotos, можно попробовать покопаться с AutoIt, пример навскидку: Windows XP Desktop Icon coordinates

McLotos 28-03-2012 16:14 1888627

Да, я вот тоже сначала подумал об AutoIt, но вот только опыта работы с ним маловато.

Blast 28-03-2012 16:17 1888628

Мне кажется это оптимальным вариантом. Не знаю возможно ли учитывать разрешение (и нужно ли это, ведь координаты по осям).
Давайте переместимся в специализированный форум по AutoIt и спросим у специалистов.

McLotos 28-03-2012 20:24 1888769

Хорошая идея,Blast, кстати, спасибо что переместили, и вообще за помощь! =)

McLotos 29-03-2012 10:09 1889075

А как определить формат монитора?
Ну т.е. сейчас у меня сделано так
Код:

$sp=@DesktopWidth & " X " & @DesktopHeight

        Switch $sp
                Case "1280 X 1024"
                        $sa=$sp
                Case "1280 X 960"
                        $sa=$sp
                Case "1280 X 768"
                        $sa=$sp
                Case "1280 X 720"
                        $sa=$sp
                Case "1280 X 600"
                        $sa=$sp
                Case "1115 X 864"
                        $sa=$sp
                Case "1024 X 768"
                        $sa=$sp
                Case "800 X 600"
                        $sa=$sp
        EndSwitch

MsgBox(64,"Параметры дисплея", $sa)

Топорный вариант, но думаю для первого скрипта пойдёт.
Этот скрипт просто выводит сообщение на дисплей, а как сделать чтобы он учитывал разницу между широкоформатным монитором и квадратным?
На самом деле вместо $sa=$sp везде будут разные данные, индивидуально под каждый формат дисплея

Yashied 01-04-2012 19:32 1891443

Цитата:

Цитата McLotos
Где в реестре лежат координаты иконок рабочего стола? »

HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Bags\1\Desktop


Время: 13:19.

Время: 13:19.
© OSzone.net 2001-