Page 1 sur 2

UrlDownloadToFile.. Est-ce un bug ?

Publié : dim. 07/oct./2007 0:24
par Ar-S
Salut à tous

De retour avec un nouveau problème juste pour votre plaisir et pour mon mal de boulare.

Voilà un bout de code qui ne fonctionne pas et qui pourtant devrait fonctionner me semble-t-il

Code : Tout sélectionner

(...)
ElseIf EventGadget = #BT_telech
          login$=GetGadgetText(#Login)
          Mdp$=GetGadgetText(#Pass)
          If login$="" Or Mdp$=""
            MessageRequester("Oupsss",LocalText("You have to enter your premium login and password","Vous devez renseigner les champs Login & Mot de passe de votre compte rapidshare premium"))
          Else
          url.s=GetGadgetText(#Main)
          LenUrl=Len(url)
          Entete$="http://"
          Extension$=Right(url,4) ; récupère l'extension
            If Left (url,7)=Entete$
              NewUrl$=ReplaceString(url,Entete$,Entete$+login$+":"+Mdp$+"@")
              MessageRequester("Test1","Nouvelle Adresse"+Chr(10)+NewUrl$) ;- test1
               CheminInitial$ = DefPath$
               Chemin$ = PathRequester("Choisissez un répertoire", CheminInitial$)
               If Chemin$
               MessageRequester("Info",LocalText("Please wait during download","Merci de patientez pendant le téléchargement"))
               FichierTelech$="PlumeSave"+Extension$
               MessageRequester("test2",Chemin$+FichierTelech$) ;- test2
               SetClipboardText(NewUrl$)
               URLDownloadToFile(NewUrl$,Chemin$+FichierTelech$) ; si je lance le debug il affiche 0
               
               MessageRequester("Info",LocalText("Download Complete "+Chemin$+FichierTelech$,"Téléchargement terminé "+Chemin$+FichierTelech$))
               EndIf
            
            Else
              MessageRequester("Oh no",LocalText("Wrong URL","Adresse incorrecte"))
            EndIf
          EndIf 
        EndIf
en fait je copie/colle une adresse à récupérer.
ex :

Code : Tout sélectionner

http://bricolo.zip
Mais je dois absolument mettre un pass et un login pour y accéder pour que la nouvelle adresse (NewUrl$) apparaisse de la sorte.

Code : Tout sélectionner

http://LOGIN:MOTDEPASSE@bricolo.zip
Jusque là c'est normal.

Avec mon code, la NewUrl$ apparait bien comme il faut mais lorsque je lance le téléchargement avec
URLDownloadToFile(NewUrl$,Chemin$+FichierTelech$)
et bien rien ne se passe.
Pourtant, si je teste la NewUrl$ dans mon navigateur internet, et bien ça fonctionne donc l'adresse est bonne.

Avez vous une idée de pourquoi le téléchargement ne veut pas se lancer ?

D'avance merci de votre aide

Publié : dim. 07/oct./2007 0:53
par Backup
peut etre des caracteres invisible ?? style chr(13) chr(10) qui trainent quelque part ... non ?

Publié : dim. 07/oct./2007 1:18
par Chris
D'où ça sort, cette fonction URLDownloadToFile() ???

Publié : dim. 07/oct./2007 1:21
par Backup
Chris a écrit :D'où ça sort, cette fonction URLDownloadToFile() ???
ben tu l'as pas toi ? 8O












:lol: :lol:

Publié : dim. 07/oct./2007 1:27
par Chris
Dobro a écrit :
Chris a écrit :D'où ça sort, cette fonction URLDownloadToFile() ???
ben tu l'as pas toi ? 8O
:lol: :lol:
Ben non.

Je l'ai dans l'api windows, mais pas dans les fonctions de Pb.
C'est une fonction qui est en relation avec une interface ou je sais pas quoi.
Enfin, bref : Un truc bien incompréhensible.

Mais ça doit être une autre fonction, vu que dans celle que j'ai, il y a 5 paramètres.

Publié : dim. 07/oct./2007 1:47
par Backup
ce serai pas dans la Droopy lib ça ? 8O

Publié : dim. 07/oct./2007 9:45
par Ar-S
Oui oui c'est dans la droopy lib je confirme. (je m'en sert souvent, trop de bonnes petites choses inside).

Par contre je ne vois toujours pas d'ou vient le soucis car j'ai pas d'espace ni de RC dans mon adresse. Je me dis que c'est peut-être l'@ qui chie ou les :
mais même lorsque je remplace l'@ par chr(60) et les : par chr(58) ça marche pas non plus. La je ne pige pas.

J'ai même essayé un code trés sympa du fofo anglais : http://www.purebasic.fr/english/viewtopic.php?t=12433

qui ne fonctionne pas non plus avec un url type http://login:mdp@adresse

Publié : dim. 14/oct./2007 13:14
par Ar-S
Image

Personne n'aurait une idée de comment résoudre ce soucis ? :cry:

Publié : dim. 14/oct./2007 22:23
par lionel_om
Ça marche aussi avec le protocole HTTP ça ? C'est pas juste pour le FTP ?

Publié : dim. 14/oct./2007 23:23
par case
j'aurais dit pareil :)

je peux pas tester j'ai pas la droopy-lib

mais les url sous cette forme login:password@url sont utilises pour le ftp je n'en ai jamais vu de semblables en http

Publié : lun. 15/oct./2007 13:19
par Ar-S
Je vous le confirme, ça ne fonctionne pas que pour le ftp
Pour n'importe quelle page avec pass et login on peut se connecter comme ça. Du moins sur tous les hebergeurs de fichiers par exemple comme Rapidshare, megaupload etc... ça fonctionnent de la sorte.

Publié : lun. 15/oct./2007 13:36
par Thyphoon
Ar-S a écrit :Je vous le confirme, ça ne fonctionne pas que pour le ftp
Pour n'importe quelle page avec pass et login on peut se connecter comme ça. Du moins sur tous les hebergeurs de fichiers par exemple comme Rapidshare, megaupload etc... ça fonctionnent de la sorte.
je confirme pour le ftp.. le type ftp://login:pass@monsite.truc ça fonctionne.

Publié : lun. 15/oct./2007 14:36
par Ar-S
alors pourquoi est-ce que cela ne fonctionne pas avec http dans mon soft ??
sachant qui si je colle l'adresse que mon soft génère dans ma barre de navigation, le teleche se charge via le navigateur ou le gestionnaire de telech, mais si j'utilise UrlDownloadToFile() ça veut rien savoir :(

C'est à s'arracher les cheveux ! :twisted:

Publié : lun. 15/oct./2007 14:49
par Thyphoon
regarde dans les différents code proposé sur purearea.net si part hasard il y en aurait un qui serait compatible
http://www.purearea.net/pb/english/index.htm

Publié : lun. 15/oct./2007 15:19
par Ar-S
Thyphoon a écrit :regarde dans les différents code proposé sur purearea.net si part hasard il y en aurait un qui serait compatible
http://www.purearea.net/pb/english/index.htm
C'est une des premières chose que j'ai fait ! sans succès.