why don't you use wscript object from kix ?
the createshortcut method can open an existing file.


global $objShell, $strDesktop

$objShell = CreateObject("WScript.Shell")
$strDesktop = $objShell.SpecialFolders("Desktop")

$strStartMenu = $objShell.SpecialFolders("StartMenu")
$strPath = $strStartMenu + "\Programmes"

$=ShowShortcutInfo( "Internet Explorer.lnk", $strPath )

?
?"== ended =="
flushkb
gets $x
exit 0

function ShowShortcutInfo( $filename, $path )
Dim $objShortCut
Dim $strFilename

$strFilename = "$Path\$filename"
if not exist($strFileName)
? "File "+$strFilename+" does not exist"
else
$objShortCut = $objShell.CreateShortCut( $strFilename )

? " TargetPath : " +$objShortCut.TargetPath
? " Arguments : " +$objShortCut.Arguments
? " WindowStyle : " +$objShortCut.WindowStyle
? " Hotkey : " +$objShortCut.Hotkey
? " IconLocation : " +$objShortCut.IconLocation
? " Description : " +$objShortCut.Description
? " WorkingDir : " +$objShortCut.WorkingDirectory
?

$objShortCut = nothing
endif
endfunction


if you want to modify the shortcut, properties are read/write and you can save the info with the save method :


$objShortCut = $objShell.CreateShortCut( $strFilename )

$objShortCut.TargetPath = "notepad.exe"
$objShortCut.Arguments = "my file.txt"
$objShortCut.WindowStyle = 1
$objShortCut.Hotkey = ""
$objShortCut.IconLocation = "notepad.exe,0"
$objShortCut.Description = "this is my own description"
$objShortCut.WorkingDirectory = "%temp%"

$objShortCut = nothing
_________________________
Christophe