2012-04-27 12 views
5

¿Hay alguna función que le permita crear accesos directos en Windows al igual que puede crear enlaces simbólicos en Linux? Preferiría poder editar cosas como el objetivo y el nombre en lugar de tener que volver a crear un atajo completamente nuevo cada vez que quiera cambiar algo debido a una actualización.Windows (.lnk) atajos API?

Intenté abrir un archivo .lnk en un editor de texto y fue un montón de Gobbelty Gook. Me pregunto por qué es medio binario ya que los accesos directos en Linux son como un archivo .ini, simple y fácil de usar. Me temo que si voy retocando los datos, podría alterar algún tipo de suma de comprobación y el atajo no funcionará, por eso me pregunto si hay una API específica que deba llamarse para manipular estos objetos.

Actualización: He encontrado una función para consultar datos de acceso directo MsiGetShortcutTarget()http://msdn.microsoft.com/en-us/library/windows/desktop/aa370299(v=vs.85).aspx, pero aún no hay nada sobre la creación o modificación de accesos directos.

+1

'MsiGetShortcutTarget()' es para archivos de vínculos de Windows Installer, no archivos de enlaces generales. El documento al que se vincula dice incluso que se utiliza 'IShellLink' para los archivos que' MsiGetShortcutTarget() 'no puede cargar. –

+0

En Windows, los enlaces de shell (o accesos directos) y los enlaces simbólicos son dos cosas diferentes. Para crear un enlace simbólico, use CreateSymbolicLink(). –

Respuesta

8

Consulte here para obtener la documentación de MSDN en enlaces de shell.

+1

Eso parece molesto para crear atajos ... Aunque creo que todo es así. – chris

+0

Se accede a la mayoría de las cosas en el shell de Windows a través de objetos COM. –

Cuestiones relacionadas