Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.11.19;
Скачать: [xml.tar.bz2];

Вниз

путь к рабочему столу   Найти похожие ветки 

 
aleko   (2006-10-25 01:49) [0]

Доброго времени суток, уважаемые Мастера.
Подскажите пожалуйста, можно ли при помощи какой-либо функции получить путь к рабочему столу.
Заранее спасибо.


 
Eraser ©   (2006-10-25 02:56) [1]

> [0] aleko   (25.10.06 01:49)

SHGetSpecialFolderPath(.., CSIDL_COMMON_DESKTOPDIRECTORY, ..);


 
Германн ©   (2006-10-25 03:26) [2]


> Eraser ©   (25.10.06 02:56) [1]
>
> > [0] aleko   (25.10.06 01:49)
>
> SHGetSpecialFolderPath(.., CSIDL_COMMON_DESKTOPDIRECTORY,
>  ..);
>

Может не надо COMMON? А?
Может лучше ограничиться CSIDL_DESKTOPDIRECTORY?


 
bobah ©   (2006-10-25 10:34) [3]

Очень рекомендую ознакомится с ...\Borland\Delphi7\Demos\Virtual Listview
Демка как раз использует все нужные функции


> Eraser ©   (25.10.06 02:56) [1]

> SHGetSpecialFolderPath(.., CSIDL_COMMON_DESKTOPDIRECTORY, ..);


А вообще рабочий стол это C:\Documents and Settings\All Users\Рабочий стол... что-то вроде этого.


 
Плохиш ©   (2006-10-25 11:04) [4]


> bobah ©   (25.10.06 10:34) [3]


> А вообще рабочий стол это C:\Documents and Settings\All Users\Рабочий стол... что-то вроде этого.

Над выделенным рыдал...

Но уверен ли отвечающий, что он прав и во всех системах это так называется?


 
bobah ©   (2006-10-25 11:50) [5]


Над выделенным рыдал...

Но уверен ли отвечающий, что он прав и во всех системах это так называется?


Ну это так сведения где рабочий стол находится
С All Users согласен

Конечно не во всех системах, но покрайне мере в XP там(сабж)
Это конечно не решение проблемы, еще раз говорю так для
сведения. Наверное про это вообще зря написал:)


 
aleko   (2006-10-29 00:16) [6]

> Eraser ©   (25.10.06 02:56) [1]

Спасибо огромное, сделал так


var
...
TempPath : array[0..MAX_PATH] of char;

...

SHGetSpecialFolderLocation(Application.Handle,CSIDL_DESKTOPDIRECTORY,
                                                    lpItemID);
SHGetPathFromIDList(lpItemID, TempPath);


 
DiamondShark ©   (2006-10-29 13:15) [7]

ещё бы хорошо pidl за собой освобождать.

var
 allocator: IMalloc;
...
SHGetMalloc(allocator);
allocator.Free(lpItemID);


 
aleko   (2006-10-30 01:31) [8]

> DiamondShark ©   (29.10.06 13:15) [7]

Спасибо, учту.. еще не привык думать и об этом :)


 
Eraser ©   (2006-10-30 01:55) [9]

> [2] Германн ©   (25.10.06 03:26)

а это уже зависит от того, что за программа у автора.


 
Eraser ©   (2006-10-30 01:59) [10]

> [6] aleko   (29.10.06 00:16)

почему бы не использовать ф-цию SHGetSpecialFolderPath? там не нужно будет заморачиваться с IMalloc. хотя, не спорю, SHGetSpecialFolderLocation новее, но у нею зато отсутствует совместимость с win98/95.


 
Германн ©   (2006-10-30 02:16) [11]


> Eraser ©   (30.10.06 01:55) [9]
>
> > [2] Германн ©   (25.10.06 03:26)
>
> а это уже зависит от того, что за программа у автора.
>

Дык, имхо, "какая б не была"!  Моё личное - не надо лезть в "Общее"!
Если речь идёт (а она идёт)  о пользовательской программе.


 
Eraser ©   (2006-10-30 02:20) [12]

> [11] Германн ©   (30.10.06 02:16)


> Если речь идёт (а она идёт)  о пользовательской программе.

вот то-то и оно.
идеальный вариант, конечно, при установке, спрашивать юзера - устанавливать для всех или только для текущего.


 
Eraser ©   (2006-10-30 02:21) [13]

> [11] Германн ©   (30.10.06 02:16)


> Моё личное - не надо лезть в "Общее"!

а для чего его тогда сделали это общее? )


 
Ketmar ©   (2006-10-30 02:22) [14]

>[13] Eraser(c) 30-Oct-2006, 02:21
>а для чего его тогда сделали это общее? )
чтобы глубокомысленно молчать. всем известно, что вопросы решают только в "потрепаться".


 
Германн ©   (2006-10-30 02:42) [15]


> Eraser ©   (30.10.06 02:20) [12]
>
> > [11] Германн ©   (30.10.06 02:16)
>
>
> > Если речь идёт (а она идёт)  о пользовательской программе.
>
>
> вот то-то и оно.
> идеальный вариант, конечно, при установке, спрашивать юзера
> - устанавливать для всех или только для текущего.
>

Не-а.
Идеальный вариант, имхо, спросить у пользователя с правами администратора, кому из пользователей сию программу установить!

Мне лично уже давно обрыдло уничтожать ссылки в меню "Пуск" и ярлыкм на рабочем столе, которые созданы инсталляторами дочкиных программ, но некоторые из этих программ пользует и моя жена. :-(


 
Ketmar ©   (2006-10-30 02:48) [16]

>[15] Германн(c) 30-Oct-2006, 02:42
>Мне лично уже давно обрыдло уничтожать ссылки в меню "Пуск"
>и ярлыкм на рабочем столе, которые созданы инсталляторами
>дочкиных программ, но некоторые из этих программ пользует
>и моя жена. :-(
каждой -- по компу. и домашнюю локалку.


 
aleko   (2006-10-31 08:09) [17]

> Eraser ©   (30.10.06 01:59) [10]

... :) спасибо, попробую... хотя в принципе программка для сугубо местного использования..

> всем

...путь к рабочему столу нужен не для процесса установки, а для сохранения файлов именно на рабочий стол, так как пользователи, во всяком случае мои :), категорически не хотят закапываться в папки и искать необходимое, так что это в какой-то степени необходимость... :)


 
Gydvin ©   (2006-10-31 09:12) [18]


> ...путь к рабочему столу нужен не для процесса установки,
>  а для сохранения файлов именно на рабочий стол, так как
> пользователи, во всяком случае мои :), категорически не
> хотят закапываться в папки и искать необходимое, так что
> это в какой-то степени необходимость... :)

И тут у винды слетает крыша .....


 
Плохиш ©   (2006-10-31 11:31) [19]


> И тут у винды слетает крыша .....

Сильно прикалывался, когда увидел 2,5 мегабайтный документ ворда с расширением pif, лежащий на рабочем столе. Загрузка виндовс вызывала слёзы умиления :-)


 
Gydvin ©   (2006-10-31 18:57) [20]


> Плохиш ©   (31.10.06 11:31) [19]
>
>
> > И тут у винды слетает крыша .....
>
> Сильно прикалывался, когда увидел 2,5 мегабайтный документ
> ворда с расширением pif, лежащий на рабочем столе. Загрузка
> виндовс вызывала слёзы умиления :-)


Долго учил одних не хранить на диске ц нужных документов, пока не потеряли вместе с виндой


 
Eraser ©   (2006-10-31 19:38) [21]

> [19] Плохиш ©   (31.10.06 11:31)

а при чем тут загрузка виндовз? )

PS
 эт точно! сильно раздражает, когда видешь кучу документов (а не ярлыков на них) на раб. столе.


 
DiamondShark ©   (2006-10-31 20:05) [22]


> SHGetSpecialFolderLocation новее, но у нею зато отсутствует
> совместимость с win98/95.

наоборот.
;-)

SHGetSpecialFolderPath Function
Minimum DLL Version shell32.dll version 4.71 or later
Minimum operating systems Windows 2000, Windows NT 4.0 with Internet Explorer 4.0, Windows 98, Windows 95 with Internet Explorer 4.0

SHGetSpecialFolderLocation Function
Minimum DLL Version shell32.dll version 4.7 or later
Minimum operating systems Windows NT 4.0, Windows 95


 
aleko   (2006-10-31 20:41) [23]


> Gydvin ©   (31.10.06 09:12) [18]

И тут у винды слетает крыша .....



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



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.11.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.048 c
2-1162219028
Megabyte
2006-10-30 17:37
2006.11.19
Работа с пакетами(package)


15-1162403333
Ketmar
2006-11-01 20:48
2006.11.19
как молиться?


15-1162295205
Gydvin
2006-10-31 14:46
2006.11.19
mp3 плеер - T.sonicTM 510


15-1162546905
Руслан
2006-11-03 12:41
2006.11.19
Нужна картинка студента


2-1162462779
pasha_golub
2006-11-02 13:19
2006.11.19
Как поймать сообщение посланное для Application.Handle?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский