Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Создание ярлыков программным методом 
V
    Опции темы
Mpak
Дата 28.10.2007, 18:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 445
Регистрация: 12.11.2006

Репутация: 4
Всего: 7



Как создать ярлык на известный ехе-файл?


--------------------
В любой откомпилированной программе есть, по крайней мере, одна ошибка...
P.S. А у меня их минимум две...
PM MAIL ICQ   Вверх
Alexeis
Дата 28.10.2007, 19:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 26
Всего: 459



Вот тут есть что-то похожее http://forum.vingrad.ru/index.php?show_typ...howtopic=121804


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Mpak
Дата 29.10.2007, 11:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 445
Регистрация: 12.11.2006

Репутация: 4
Всего: 7



Alexeis, там как я понял, получение информации о уже существующем ярлыке, а мне надо его создать от известного файла.


--------------------
В любой откомпилированной программе есть, по крайней мере, одна ошибка...
P.S. А у меня их минимум две...
PM MAIL ICQ   Вверх
Alexeis
Дата 29.10.2007, 11:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 26
Всего: 459



Mpak, знаю, но это делается при помощи того же интерфейсов IShellLink и IPersistFile, только интерфейс IPersistFile используется не для чтения, а для записи.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
volvo877
Дата 29.10.2007, 11:41 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2073
Регистрация: 15.11.2004

Репутация: 13
Всего: 116



Цитата(Mpak @  29.10.2007,  10:16 Найти цитируемый пост)
мне надо его создать от известного файла. 

Код
  ...
  _di_IInterface di;
  IShellLink *sLnk;
  IPersistFile *pFile;
  di = CreateComObject(CLSID_ShellLink);
  di->QueryInterface(IID_IShellLink, (void**)&sLnk);
  di->QueryInterface(IID_IPersistFile, (void**)&pFile);
  sLnk->SetPath("D:\\test.exe"); // <--- Вот это - твой известный файл
  pFile->Save(WideString("C:\\my.lnk"), FALSE);
  sLnk->Release();
  pFile->Release();
  ...




Это сообщение отредактировал(а) volvo877 - 29.10.2007, 11:42
PM MAIL   Вверх
Mpak
Дата 29.10.2007, 13:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 445
Регистрация: 12.11.2006

Репутация: 4
Всего: 7



Alexeis, volvo877, Благодарю. Ушел пробовать.


--------------------
В любой откомпилированной программе есть, по крайней мере, одна ошибка...
P.S. А у меня их минимум две...
PM MAIL ICQ   Вверх
Mpak
Дата 29.10.2007, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 445
Регистрация: 12.11.2006

Репутация: 4
Всего: 7



Цитата(volvo877 @  29.10.2007,  14:41 Найти цитируемый пост)
IShellLink

Где она лежит? В хелпе не нашел, что подключить надо...


--------------------
В любой откомпилированной программе есть, по крайней мере, одна ошибка...
P.S. А у меня их минимум две...
PM MAIL ICQ   Вверх
volvo877
Дата 29.10.2007, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2073
Регистрация: 15.11.2004

Репутация: 13
Всего: 116



Код

#include <shlobj.h>

PM MAIL   Вверх
Mpak
Дата 29.10.2007, 20:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 445
Регистрация: 12.11.2006

Репутация: 4
Всего: 7



Он у меня 4 ошибки нашел в хедерах... 
Цитата

[C++ Error] shobjidl.h(2193): E2238 Multiple declaration for 'FOLDERSETTINGS'
[C++ Error] shobjidl.h(8095): E2238 Multiple declaration for 'DESKBANDINFO'
[C++ Error] shlobj.h(1422): E2238 Multiple declaration for 'FVSHOWINFO'
[C++ Error] shlobj.h(3457): E2238 Multiple declaration for 'SHELLFLAGSTATE'


Это сообщение отредактировал(а) Mpak - 29.10.2007, 20:40


--------------------
В любой откомпилированной программе есть, по крайней мере, одна ошибка...
P.S. А у меня их минимум две...
PM MAIL ICQ   Вверх
volvo877
Дата 29.10.2007, 20:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2073
Регистрация: 15.11.2004

Репутация: 13
Всего: 116



Надо кое-что добавить перед подключением vcl.h:
Код

#define NO_WIN32_LEAN_AND_MEAN

#include <vcl.h>


Это сообщение отредактировал(а) volvo877 - 29.10.2007, 20:40
PM MAIL   Вверх
Mpak
Дата 29.10.2007, 20:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 445
Регистрация: 12.11.2006

Репутация: 4
Всего: 7



Прошу прощения, это уже обсуждалось в предложеной Alexeis теме
Цитата(Alexeis @  28.10.2007,  22:31 Найти цитируемый пост)
Вот тут есть что-то похожее http://forum.vingrad.ru/index.php?show_typ...howtopic=121804


Спасибо smile


--------------------
В любой откомпилированной программе есть, по крайней мере, одна ошибка...
P.S. А у меня их минимум две...
PM MAIL ICQ   Вверх
Mpak
Дата 29.10.2007, 21:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 445
Регистрация: 12.11.2006

Репутация: 4
Всего: 7



Все работает! Спасибо большое! Побольше бы таких отзывчивых людей ;) +1 smile


--------------------
В любой откомпилированной программе есть, по крайней мере, одна ошибка...
P.S. А у меня их минимум две...
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.1472 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.