|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
08.05.2011, 19:55 | #1 |
Форумчанин
Регистрация: 21.12.2010
Сообщений: 224
|
Не могу открыть мой компьютер CSIDL_DRIVES
Пишу CSIDL_DRIVES и открывается не мой компьютер а папка с моей прогой
|
08.05.2011, 20:19 | #2 |
Старожил
Регистрация: 13.08.2009
Сообщений: 2,581
|
Пиши не на бумажке, а на картонке.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
|
08.05.2011, 20:24 | #3 |
Форумчанин
Регистрация: 21.12.2010
Сообщений: 224
|
а извините
Код:
|
08.05.2011, 20:31 | #4 |
Старожил
Регистрация: 13.08.2009
Сообщений: 2,581
|
Ну, а что же вы ждали?
Вы используете GetSpecialFolderPath, чтобы получить путь на диске к папке. Надо ли говорить, что папка "Мой компьютер" - виртуальная? Она не существует на диске. Открывать виртуальную папку надо по PIDL. Конечно, ShellExecute для этих целей не очень подходит, а вот ShellExecuteEx - вполне. В fMask добавляем SEE_MASK_IDLIST, а PIDL записываем в lpIDList.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
|
08.05.2011, 20:34 | #5 |
Форумчанин
Регистрация: 21.12.2010
Сообщений: 224
|
ага. верняк. эт что разные функции делать под. виртуальные папки и обычные???
|
08.05.2011, 20:38 | #6 |
Форумчанин
Регистрация: 21.12.2010
Сообщений: 224
|
или можно вот так
procedure TForm1.Image2Click(Sender: TObject); var PIDL: PItemIDList; Info: TShellExecuteInfo; pInfo:PShellExecuteInfo; begin SHGetSpecialFolderLocation(0,$0005, PIDL); pInfo:=@Info; With Info do begin cbSize:=SizeOf(Info); fMask:=SEE_MASK_NOCLOSEPROCESS+SEE_ MASK_IDLIST; wnd:=0; lpVerb:=nil; lpFile:=nil; lpParameters:=nil; lpDirectory:=nil; nShow:=SW_ShowNormal; hInstApp:=0; lpIDList:=PIDL; end; ShellExecuteEx(pInfo); на все на вируал и на обычные |
08.05.2011, 21:31 | #7 |
Старожил
Регистрация: 13.08.2009
Сообщений: 2,581
|
Конечно нет. Если что-то работает для виртуальной папки, то для физической - тем более. Первое включает в себя второе, но не наоборот.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Получить свойство Мой Компьютер | Rebel123 | Общие вопросы Delphi | 5 | 06.02.2010 19:20 |
Закрыть доступ в Мой компьютер | Syltan | Операционные системы общие вопросы | 6 | 27.10.2009 18:04 |
как с помощию нажатия кнопки можно открыть мой компьютер? | wulf17 | Общие вопросы Delphi | 4 | 23.06.2009 18:34 |
Мой компьютер не может себя найти | Voda | Свободное общение | 6 | 24.09.2008 22:43 |
Мой новогодний компьютер | meg33 | Свободное общение | 2 | 27.12.2007 16:16 |