Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.01.2010, 16:38   #1
Gr@nd
Пользователь
 
Регистрация: 27.05.2009
Сообщений: 32
По умолчанию Содержимое ярлыка

Как можно прочитать содержимое ярлыка, т.е. путь к файлу?
Gr@nd вне форума Ответить с цитированием
Старый 12.01.2010, 17:17   #2
W0LF
Форумчанин
 
Аватар для W0LF
 
Регистрация: 28.03.2008
Сообщений: 940
По умолчанию

Я знаю как его узнать, но это экстремальный и обезбашенный вариант))
Грузишь ярлык, ну скажем в Memo, и просто парсишь ссылку, она там есть)
W0LF вне форума Ответить с цитированием
Старый 12.01.2010, 17:33   #3
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

http://msdn.microsoft.com/en-us/libr...91(VS.85).aspx
http://msdn.microsoft.com/en-us/libr...50(VS.85).aspx
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 12.01.2010, 23:15   #4
maxionans
Форумчанин
 
Аватар для maxionans
 
Регистрация: 02.01.2010
Сообщений: 254
По умолчанию

А еще можно через MsiGetShortcutTarget + MsiGetComponentPath
maxionans вне форума Ответить с цитированием
Старый 13.01.2010, 00:41   #5
psycho-coder
Участник клуба
 
Аватар для psycho-coder
 
Регистрация: 06.04.2009
Сообщений: 1,524
По умолчанию

Цитата:
Сообщение от W0LF Посмотреть сообщение
Я знаю как его узнать, но это экстремальный и обезбашенный вариант))
Грузишь ярлык, ну скажем в Memo, и просто парсишь ссылку, она там есть)
Ты сначала попробуй в Memo загрузить, сильно удивишся)))

А вот как можно распарсить
Код:
Uses StrUtils;
...
procedure TForm1.Button1Click(Sender: TObject);
var
  sl: file of Byte;
  slstart, slend: Integer;
  sym: Byte;
  str: String;
begin
  if OpenDialog1.Execute then
  begin
    AssignFile(sl, OpenDialog1.FileName);
    Reset(sl);
    SetLength(str, FileSize(sl));
    slstart := 1;
    while not Eof(sl) do
    begin
      Read(sl, sym);
      str[slstart] := Chr(sym);
      Inc(slstart);
    end;
    slstart := PosEx('DATA', str) + 5;
    slend := PosEx(#0#0, str, slstart);
    Edit1.Text := Copy(str, slstart, slend);
  end;
end;
psycho-coder вне форума Ответить с цитированием
Старый 13.01.2010, 07:57   #6
Altera
Старожил
 
Аватар для Altera
 
Регистрация: 29.01.2008
Сообщений: 2,406
По умолчанию

Цитата:
Сообщение от psycho-coder Посмотреть сообщение
Ты сначала попробуй в Memo загрузить, сильно удивишся)))
Да, там нулевых символов много...
Altera вне форума Ответить с цитированием
Старый 13.01.2010, 09:06   #7
uberchel
Участник клуба
 
Аватар для uberchel
 
Регистрация: 19.01.2009
Сообщений: 1,453
По умолчанию

Вот, небольшой исходник:
Вложения
Тип файла: rar PathLnk.rar (2.1 Кб, 29 просмотров)
uberchel вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запуск ярлыка подключения sapogan Общие вопросы Delphi 7 11.05.2015 14:58
Атрибуты ярлыка! poster123 Win Api 5 21.07.2009 22:33
Стрелка у ярлыка Altera Windows 3 29.10.2008 14:45
C# Создания ярлыка MAcK Общие вопросы .NET 6 16.08.2008 12:22
Свойства ярлыка Fainder Win Api 1 26.04.2007 15:26