0/5 (6 avis)
Vue 13 563 fois - Téléchargée 537 fois
'À mettre n'importe oû dans votre code (dans un module par exemple) Public Function ResolveShortcut(ByVal Filename As String) As String Try Dim bRead As Byte() = New IO.BinaryReader(New IO.FileStream(Filename, IO.FileMode.Open)).ReadBytes(FileLen(Filename)) Dim bInvalid As Byte(), sInvalid As Short 'Convertit les caractères invalide pr un répertoire (va servir à filtrer ce qui n'est pas bon) Array.Resize(bInvalid, IO.Path.GetInvalidPathChars.Length) For Each bChar As Char In IO.Path.GetInvalidPathChars bInvalid(sInvalid) = Asc(bChar) 'Convertit de Char à Byte sInvalid += 1 Next Filename = Nothing 'On efface le contenu (on s'en sert pr le retour) For Each bChar As Byte In bRead Select Case IsInArray(bInvalid, bChar) 'On regarde si le caractère est invalide Case False : Filename = Filename & Chr(bChar) 'Caractère valide Case True 'Caratère invalide 'Vérifie si le fichier existe et s'il a un extension de fichier (sert de filtre) Select Case (IO.File.Exists(Filename) And IO.Path.HasExtension(Filename)) Case False : Filename = Nothing 'On efface le contenu Case True : Return Filename 'On a trouver le fichier End Select End Select Next Catch End Try End Function 'Array.BinarySearch() ne me retourne pas le bon index (weird! ;o) 'Sa recherche un item dans un array, renvoie True si il le trouve Private Function IsInArray(ByVal Datas As Array, ByVal Search As Object) As Boolean For Each Data As Object In Datas If Data = Search Then Return True Next End Function
1 juil. 2006 à 00:15
comme, par exemple :
http://www.vbfrance.com/code.aspx?ID=7390
http://www.vbfrance.com/code.aspx?id=1053
30 juin 2006 à 21:03
quelqu'un pourait-t-il l'adapter en vb6 please ?
Merci d'avance.
A+
Antho2005
7 juin 2006 à 16:32
24 janv. 2006 à 11:22
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/shell/reference/ifaces/ishelllink/ishelllink.asp
c'est utilisable, je pense en .Net
24 janv. 2006 à 11:05
merci d'avance!!
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.