Использование компонентов, связанных с WSH представляется наиболее удобным вариантом для чтения файлов .lnk
на большинстве языков в Windows XP после установки системы.Вам просто нужен доступ к среде COM и создание экземпляра компонента WScript.Shell
.(помните, что в win ссылки на оболочку обычно ссылаются на explorer.exe
)
Следующий фрагмент кода, например, работает на PHP: (PHP 5, используя COMобъект)
<?php
$wsh=new COM('WScript.Shell'); // the wsh object
// please note $wsh->CreateShortcut method actually
// DOES THE READING, if the file already exists.
$lnk=$wsh->CreateShortcut('./Shortcut.lnk');
echo $lnk->TargetPath,"\n";
Этот другой вместо этого делает то же самое на VBScript:
set sh = WScript.CreateObject("WScript.Shell")
set lnk = sh.CreateShortcut("./Shortcut.lnk")
MsgBox lnk.TargetPath
Большинство примеров в этом поле написаны на VB / VBS , но они хорошо переводят на весь диапазон языков, поддерживающих взаимодействие COM и WSH в той или иной форме.
Это простое руководство может пригодиться, так как перечисляет и иллюстрирует некоторые из самых интересных свойств файла .lnk
, кроме самых важных: TargetPath
.Это:
WindowStyle
, Hotkey
, IconLocation
, Description
, WorkingDirectory