De C++ je crée un lien de raccourci pour un fichier exécutable. Cela fonctionne très bien mais si le dossier exetuable a changé de chemin, le lien n'est plus utilisable (il affiche manuellement la recherche classique pour le fichier manquant). Si je crée un lien de raccourci à partir de Windows en faisant simplement glisser le fichier exécutable vers le chemin que je veux créer le lien et ensuite changer les chemins de dossier, il trouve toujours l'exécutable et met à jour les chemins du raccourci sans recherche manuelle ou quoi que ce soit comme ça.C++ shorcut.lnk met à jour les chemins si le fichier est manquant
Comment puis-je faire cela à partir de C++ aussi? J'ai essayé d'utiliser des arguments, mais je suppose que les arguments ne servent qu'à l'invite de commande et ne mettent pas à jour les liens simplement en exécutant le lien du raccourci.
Voici un lien sur la façon dont je l'ai fait en C++ How to programmatically create a shortcut using Win32
Cette réponse SO est juste un copier/coller de l'article [MSDN] (https://msdn.microsoft.com/en-us/library/bb776891 (VS.85) .aspx). Utilisez l'exemple de code ResolveIt à la place. –
"Une application peut avoir besoin d'accéder et de manipuler un raccourci qui a été créé précédemment.Cette opération est appelée résoudre le raccourci." Eh bien par cela et seulement je ne vérifie pas si cela en soi mettra à jour le raccourci car le raccourci ne peut pas trouver le raccourci l'application elle-même. Fera-t-il le travail ou sera-ce juste une perte de temps? C'est pourquoi je demande ici quelqu'un qui a déjà fait cela et sait avec certitude quoi faire ... – Vas
L'hypothèse implicite dans votre question est que vous savez en quelque sorte ce qui est arrivé à la cible du lien et pouvez donc mettre à jour la propriété Path Si vous ne Je sais, et comment pourriez-vous savoir, alors c'est en effet une perte de temps. –