ATOUTFOX
COMMUNAUTÉ FRANCOPHONE DES PROFESSIONNELS FOXPRO
Visual FoxPro : le développement durable

Forum AtoutFox : Re: CREATEBINARY( ) et son contraire en =c3=a9quivalent   

Sujet

rss Flux RSS des derniers messages

Vous devez vous identifier pour pouvoir poser une question ou répondre.

mer. 20 janvier 2016, 16h04
OlivierH
atoutfox.public.association

Re: CREATEBINARY( ) et son contraire en =c3=a9quivalent

Bonjour Francis,

Tout d'abord merci beaucoup, cela fonctionne !

j'ai tapé vite fait un code dans un prg pour que vous puissiez tester,
comme je suis en vcx, j'avais pas de proc.
Mais je suis d'accord avec les procedure et function, foxpro est très
permissif.

Sinon dans ma classe j'ai une method qui test le retour de nResponse
et gestion d'erreur aussi.

Merci
Olivier,


Le 20/01/2016 15:48, Francis Faure a écrit :
> Olivier,
>
> il a deux choses dans ton code :
>
> a) il y a un point-virgule de trop à la fin de ta ligne d'affectation "cUrl ="
>
> b) pour la récupération du contenu binaire de ton fichier jpg......
> tu utilises "oHTTP.ResponseText"......
> remplace par "oHTTP.ResponseBody" et cela devrait fonctionner
> (toujours ton problème de gestion de l'encodage...)
>
> après le reste sont des détails (si je puis me permettre...) : mais PROC....ENDPROC avec un "return"... c'est donc une "function", nResponse dans ton code n'est jamais affecté = retournera toujours 0, les retours des méthodes / functions sont à tester si erreur . .. existence du fichier .jpg, et inutile de préfixer m. les variable en affectation "gauche" puisque ce ne peut être que des variables...
>
> Code exemple qui marche :
local oHTTP as WinHTTP.WinHTTPRequest.5.1
oHTTP = createobject("WinHTTP.WinHTTPRequest.5.1")
oHTTP.open("GET""http://www.atoutfox.org/images/logoatoutfox3D.jpg";.F.)
oHTTP.send()
erase "c:\temp\photo.jpg"
strtofile(m.oHTTP.ResponseBody, "c:\temp\photo.jpg")

>
> Cordialement
> Francis
>
>
> Le mer. 20 janvier 2016, 15h17 OlivierH a écrit :
>> Bonjour à tous,
>>
>> Pour ceux qui ont suivi mon poste pour communiquer avec Rest api azure.
>>
>> J'aimerais lire une image provenant d'un lien Url et de l'enregistrer
>> sur le disque.
>>
>> Donc pour envoyer une image j'utilise la function CreateBinary,
>> et mais je ne trouve d'equivalent pour lire le binaire et le transformer
>> en string binaire compatible avec FileToStr
>>
>> Ce code que j'ai crée me télécharge pas correctement le code binaire de
>> la photo. Avez vous une idée ?
>>
>>
>> Procedure GetUrlToFile() as Logical
>> Local oHTTP as WinHTTP.WinHTTPRequest.5.1
>> Local cUrl as String, cUrlParam as String, cVerb as String
>> Local bAsync as Logical
>> m.nResponse = 0
>> m.bAsync = .F. && si True alors ajouter la methode WaitForResponse
>> m.cVerb = "GET"
>> m.cUrl =
>> "https://imhoteppicture-secondary.blob.core.windows.net/941003/941003A02294_1.jpg";
>> m.oHTTP = createobject("WinHTTP.WinHTTPRequest.5.1")
>>
>> m.oHTTP.Open(m.cVerb,m.cURL, m.bAsync)
>> m.oHTTP.Send()
>> &&m.oHTTP.WaitForResponse() && obligatoire si async true
>>
>> &&m.nResponse = m.oHTTP.Status
>> &&this.cStatusText = m.oHTTP.Statustext
>> &&this.cResponseText = m.oHTTP.ResponseText
>> &&this.cResponseHeaders = m.oHTTP.GetAllResponseHeaders()
>>
>> m.cFile = m.oHTTP.ResponseText
>> &&m.cFile = strconv(m.oHTTP.ResponseText,11)
>> Strtofile(m.cFile,"d:\photo.jpg")
>>
>> return m.nResponse
>> EndPROC
>>
>>
>>
>> d'avance merci
>> Olivier
>> .
>>
>
>
>
Permalink : http://www.atoutfox.org/nntp.asp?ID=0000017203
20 087 messages dans le forum • Liste complète des messages

Publicité

Les pubs en cours :


www.atoutfox.org - Site de la Communauté Francophone des Professionnels FoxPro - v3.4.0 - © 2004-2024.
Cette page est générée par un composant COM+ développé en Visual FoxPro 9.0-SP2-HF3