Prorpiété URL d'une icône raccourci internet ? [Résolu]

Messages postés
150
Date d'inscription
jeudi 22 avril 2004
Statut
Membre
Dernière intervention
10 décembre 2009
- - Dernière réponse : steph12358
Messages postés
150
Date d'inscription
jeudi 22 avril 2004
Statut
Membre
Dernière intervention
10 décembre 2009
- 8 déc. 2009 à 14:03
Bonjour

Voilà! j'essaye d'extraire les propriétés d'un raccourci internet
mais je n'arrive pas à récupérer l'URL associée.
La fonction ne me renvoie pas d'erreur mais une chaine vide

Voici le code:
"
#include <shellapi.h>

//(...)
bool GetShortCutUrl(LPCSTR ShortcutFile, char* buf,
int nSize)
{

HRESULT result;
wchar_t wsz[MAX_PATH];
LPWSTR lpTemp = NULL;
IPersistFile* ppf;

IUniformResourceLocatorW* urlLink = NULL; //nsnull;

result = CoCreateInstance(CLSID_InternetShortcut, NULL, CLSCTX_INPROC_SERVER,
IID_IUniformResourceLocatorW, (void**)&urlLink);

if (SUCCEEDED(result) && urlLink)
{
ppf = NULL; //nsnull;

result = urlLink->QueryInterface(IID_IPersistFile, (void**)&ppf);
if (SUCCEEDED(result)) // && urlFile)
{
MultiByteToWideChar(CP_ACP, 0,
ShortcutFile, -1, wsz, MAX_PATH);
result = ppf->Load(wsz, STGM_READ);
if (SUCCEEDED(result) )
{
LPWSTR lpTemp ;
result = urlLink->GetURL(&lpTemp );
sprintf(buf, "%*s", nSize, lpTemp);
}
ppf->Release();
}
urlLink->Release();
}

}
"

Merci de votre aide

Cordialement
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
21054
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
7 novembre 2014
13
3
Merci
Tu as essayé de le lire comme un simple fichier INI ???

ciao...
BruNews, MVP VC++

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 186 internautes nous ont dit merci ce mois-ci

Commenter la réponse de BruNews
Messages postés
150
Date d'inscription
jeudi 22 avril 2004
Statut
Membre
Dernière intervention
10 décembre 2009
0
Merci
Salut BruNews

Comme on se retrouve

Je n'ai pas réussi à faire fonctionner ma méthode avec GetURL
mais j'ai eu l'idée hier soir (la nuit dernière devrais-je dire)
d'ouvrir ces fichiers comme de simples flux de texte (impossible avec un éditeur de texte, windows lance les raccourcis, même avec notepad)

et ça marche!

Il suffit de rechercher la ligne commençant par "URL=",
le raccourci est derrière, effectivement comme dans
une rubrique de fichier INI...

En espérant que la solution soit portable d'un windows à l'autre (essayé sur Vista)

Merci. A+
Commenter la réponse de steph12358