J'ai essayé les 2 façons mais il me declare des erreurs de syntaxe!
J'ai essayé les 2 façons mais il me declare des erreurs de syntaxe!
Tu sais quoi , je vais faire une liste des sites qui peuvent passer car apparemment j'étais en train de me casser la tête à rien , c'est pas la longueur des noms de liens qui est en cause mais apparemment certains site ne peuvent pas être enregistré et je comprends absolument pas pourquoi!
Essayes plutôt de faire une liste de ceux qui ne passent pas, que l'on voie ...
Tous ce qui est Skyblog.
Le monde.fr : A la une
LI : le site
lefigaro
Lifehouse.com
y'en a d'autres mais bon çà me semble aléatoire
Je le tourne dans tous les sens , y'a rien de logique!Je vais essayer de faire des arrets de programme pour étudier si ya une anomalie distincte pendant la création du raccourci!
Je viens d'essayer avec mon propre code (celui avec dir) et çà marche !
J'ai l'impression que ton problème provient d'une ambiguité dûe à la présence d'un point .com, par exemple, qui devient .com.url chez moi et qui est ensuite reconnu tel quel. Comment s'est-il écrit chez toi (par ta méthode) ?
Dans l'explorateur s'affiche : Lifehouse.com - Lifehouse.com (comme titre du raccourci) et mon code (par dir) lit celà :
Text1
Personnaliser les liens.url
Hotmail.url
Windows.url
Yahoo! Mail.url
Mon Yahoo!.url
Yahoo!.url
Windows Media.url
Voila.url
Wanadoo.url
Yahoo! Mail - Le meilleur mail gratuit.url
Online Dating - Lifehouse.com.url
Lifehouse.com - Lifehouse.com.url
Donc en faite tu créer ton raccourci avec ta méthode Dir!?
Non ! la methode dir ne m'as servi qu''à recenser et lire !
Elle ne peut créer un raccourci !
les raccourcis doivent être créés comme tels et ta méthode est bonne pour ce faire, à la base.
Seule la gestion parait défaillante quant il y a un point. Et c'est sur celà que tu dois te focaliser !
Je demeures convaincu que l'emploi des """ bien gérés devrait te permettre de te sortir d'affaire.
D'accord , je vais donc tout refaire en matiere de lecture des raccourci en utilisant ta méthode et je te dirais ce que sa donné , demain!allez bonne soirée.a demain.
Je patoge quand même avec ta méthode alors je te montre ce que j'ai fait!Attenttion çà ressemble plus à un mix des 2 méthodes.
A vrai dire , je vois pas comment t'as fait toi mais bon j'ai essayé de m'en sortir comme j'ai pu , mais au final çà fonctionne pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 Dim ChemRep As String Dim myname As Variant Dim objShell As Shell32.Shell Dim objFolder As Shell32.Folder Dim colItems As Shell32.FolderItems Dim objItem As Shell32.FolderItem Set objShell = CreateObject("Shell.Application") Set objFolder = objShell.NameSpace(App.Path & "\Liens") Set colItems = objFolder.Items i = 1 For Each objItem In colItems ChemRep = App.Path & "\Liens\" 'Liens myname = Dir(ChemRep & objItem.Name & "*.url*") If Button.Index = i Then Do While myname <> "" If myname <> "." And myname <> ".." Then GoTo suite End If myname = Dir Loop End If i = i + 1 Next suite: Chemin = ChemRep & myname Shell (Chemin)
Tu as une erreur ? Si oui, sur quelle ligne ? Sinon, qu'obtiens-tu ?
A+
Mon erreur se situe du "shortcut.save",voici le code correspondant :
J'ai essayé de voir le problème avec mes profs mais peut s'y connaissent en VB et d'autres me disent que çà peut être du à l'envoi de Pop-Up de certains sites mais je vois pas ce que les PopUps empecheraient d'enregistrer mes raccourci normalement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 Public Sub ecrire_raccourci_liens(favoris_lien, nom_lien As String) Dim WSHShell, Shortcut As Object Set WSHShell = CreateObject("WScript.Shell") Set Shortcut = WSHShell.CreateShortcut(App.Path & "\Liens\" & favoris_lien) With Shortcut .TargetPath = WSHShell.ExpandEnvironmentStrings(nom_lien) End With Shortcut.Save Explorateur.Favoris_bar.Buttons.Clear Call lire_Favoris End Sub
As-tu essayé de faire un msgbox (dès qu'ils sont définis) de favoris_lien et de nom_lien ?
Car je crois que le problème est là (avant même de parler de lecture du répertoire !)
oui et ce que je ne comprends pas c'est qu'il m'affiche bien le nom du site et le lien!C'est là que je m'y perds car d'apres ces tests , il devrait générer aucune erreur.Tout à l'heure , j'ai essayé mon programme sous un windows98 et là,il m'as pas laisser enregistré un fichier sans extension , il m'a signalé une erreur comme quoi le shortcut.save avait échoué.
si tes msgbox affichent "du correct", je ne comprends plus !
A moins que ...
essayes donc de transformer favoris_lien et nom_lien ainsi, à tout hasard :
favoris_lien = Trim(favoris-lien)
nom-lien = Trim(nom-lien)
Si celà ne marche pas ainsi, va plus loin (il arrive quelquefois que des noms de fichiers soient bizarres) :
places un label label1, par exemple, puis
label1.caption = trim(favoris_lien)
puis favoris_lien = label1.caption
et kif-kif pour nom_lien ...
J'ai quelquefois eu des surprises de ce genre ! alors... on ne sait jamais ! Essayes !
J'ai essayé ta méthode mais çà changes absolument rien!Tu crois si je crée un fichier d'enregistrement qui comporterait les noms des favoris et leur lien , çà pourrait fonctionner?Sinon j'aurais plus à faire une liste des sites qui passent.
En plus , t'aleur j'en parle à mon prof et il m'a sorti exactement cette solution!lool
Je crains fort que tu doives y aller "à tatons" !
Le problème me parait survenir lors de la création de tes raccourcis URL !
bonsoir
pour ce lien qui pose probleme , que ce se passe t'il si tu cliques dessus manuellement ?
cela ne va pas regler ton probleme mais pour créer un raccourci dans un repertoire , voici la methode que j'utilise
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Private Sub Command1_Click() ' 'necessite d'activer la reference Windows Script Host Object Model ' 'Creation lien/raccourci url ' Dim WshShell As IWshRuntimeLibrary.WshShell Dim Raccourci As IWshRuntimeLibrary.WshURLShortcut Set WshShell = CreateObject("WScript.Shell") Set Raccourci = WshShell.createShortcut(App.Path & "\monLienPréféré.url") Raccourci.TargetPath = "<a href="http://www.developpez.com/" target="_blank">http://www.developpez.com/</a>" Raccourci.Save End Sub
pour boucler sur les raccourcis d'un repertoire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 Private Sub Command2_Click() ' ''boucle sur les liens d'un repertoire et lancement ' Dim objShell As Shell32.Shell Dim objFolder As Shell32.Folder Dim colItems As Shell32.FolderItems Dim objItem As Shell32.FolderItem Set objShell = CreateObject("Shell.Application") Set objFolder = objShell.NameSpace(App.Path) Set colItems = objFolder.Items For Each objItem In colItems If objItem.IsLink Then 'boucle sur les liens 'informations sur le lien Debug.Print objItem.Name Debug.Print objItem.Path Debug.Print objItem.GetLink.Path 'pour afficher le lien dans un WebBrowser 'WebBrowser1.Navigate objItem.GetLink.Path ' pour déclencher directement le lien 'objItem.InvokeVerb End If Next End Sub
je viens de faire un test sans probleme , avec plus de 10 raccourcis , et un nom de lien qui contenait 55 caracteres
comme l'a deja fait remarquer Bbil , tu es sur que ce n'est pas le "If Button.Index = i Then" qui pose probleme ?
bonne soiree
michel
J'ai essayé ta méthode et ton code mais au niveau de l'enregistrement çà me fais la meme chose que precedemment.
Je l'ai meme repris dans une application a part mais rien n'y fait , des que j'ajoute un lien qui veut pas prendre il me le prends pas et il me créé un fichier sans extension!
Je vois vraiment pas ce qu'il cloche , mon windows??ou mon Visual Basic?? tu crois que çà peut etre une cause.
bonjour
qu'appelles tu un lien "qui veut pas prendre" ?des que j'ajoute un lien qui veut pas prendre il me le prends pas
verifie que tu as indiqué les bons parametres ...
bonne journée
michel
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager