|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Как уэнать параметры ярлыка
Для создания ярлыка использую процедуру:
Код:
Procedure CreateShotCut(Var SourceFile, ShortCutName, SourceParams : String); Var IUnk : IUnknown; ShellLink : IShellLink; ShellFile : IPersistFile; tmpShortCutName : String; WideStr : WideString; I : Integer; begin IUnk:=CreateComObject(CLSID_ShellLink); ShellLink:=IUnk As IShellLink; ShellFile:=IUnk As IPersistFile; ShellLink.SetPath(PChar(SourceFile)); ShellLink.SetArguments(PChar(SourceParams)); ShellLink.SetWorkingDirectory(PChar(ExtractFilePath(SourceFile))); ShortCutName:=ChangeFileExt(ShortCutName,'.lnk'); If FileExists(ShortCutName) Then begin ShortCutName:=Copy(ShortCutName,1,length(ShortCutName)-4); I:=1; Repeat tmpShortCutName:=ShortCutName+'('+IntToStr(I)+').lnk'; Inc(I); Until (Not FileExists(tmpShortCutName)); WideStr:=tmpShortCutName; end Else WideStr:=ShortCutName; ShellFile.Save(PWChar(WideStr),False); end; Подскажите, пожалуйста, каким образом можно узнать значения входных параметров этой процедуры по уже созданному ярлыку. То есть нужна процедура обратная этой. |
#2
|
|||
|
|||
В Windows SDK разобран пример для вашего случая. Но, естественно, на C. Впрочем, неважно на каком языке — функции Win32 API в Delphi те же. Смотрите тему «How to Obtain Filename and Path from a Shell Link or Shortcut» в справке.
|