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

Вниз

Как узнать на какой файл ссылается ярлык.   Найти похожие ветки 

 
Serg001   (2002-02-23 18:29) [0]

Подскажите, как программно узнать на какой файл ссылается ярлык.


 
Sasha9   (2002-02-23 19:07) [1]

если ты открываешь ярлы через TOpenDialog то он сам это делает, а если нет то посмотри исходники TOpenDialog"а


 
Набережных С.   (2002-02-23 20:32) [2]

function TItemsForm.AssociatedObj(const Link: string; var Arguments: string): string;
var
Lnk:IShellLink;
Prf: IPersistFile;
LinkPath,Argum:array [0..MAX_PATH]of Char;
PFD:WIN32_FIND_DATA;
begin
result:=Link;
Lnk:=CreateComObject(CLSID_ShellLink) as IShellLink;
try
OleCheck(Lnk.QueryInterface(System.TGUID(IID_IPersistFile),Prf));
try
if Prf.Load(StringToOLESTR(Link),STGM_READ)=S_OK then
begin
OleCheck(Lnk.GetPath(LinkPath,MAX_PATH,PFD,SLGP_UNCPRIORITY));
OleCheck(Lnk.GetArguments(Argum,MAX_PATH));
result:=LinkPath;
Arguments:=Argum;
end;
finally
Prf:=nil;
end;
finally
Lnk:=nil;
end;
end;


 
vid   (2002-02-23 23:19) [3]

вот функция... хотя похоже я опоздал :)

Function GetFileNamefromLink(LinkFileName:String):String;
// Эта функция возвращает полный путь к файлу, из ярлыка этого файла
var
MyObject: IUnknown;
MySLink: IShellLink;
MyPFile: IPersistFile;
FileInfo: TWin32FINDDATA;
WidePath: array [0..MAX_PATH] of WideChar;
Buff: array [0..MAX_PATH] of Char;
begin
Result := "";
if (fileexists(Linkfilename)=false) then exit;
MyObject := CreateComObject(CLSID_ShellLink);
MyPFile := MyObject as IPersistFile;
MySLink := MyObject as IShellLink;
StringToWideChar(LinkFileName, WidePath, SizeOf(WidePath));
MyPFile.Load(WidePath, STGM_READ);
MySLink.GetPath(Buff, Max_PATH, FileInfo, SLGP_UNCPRIORITY);
Result := buff ;
end;



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

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

Наверх




Память: 0.45 MB
Время: 0.006 c
1-64598
Serebro
2002-05-07 20:11
2002.05.20
время


3-64557
Mustang
2002-04-24 14:09
2002.05.20
Еще раз о загаловках в DBGrid....


1-64674
HDD
2002-05-05 04:59
2002.05.20
Помогите пожалуйста!


7-64845
Ogu
2002-02-20 21:29
2002.05.20
Сканирование дерева каталогов с прогрессбаром


4-64888
Esa
2002-03-13 10:29
2002.05.20
Ресурсы





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский