| |
Posté le 05 août 2015 - 17:16 |
Bonjour,
dans une application android l'utilisateur peut prendre une photo avec son smartphone et j'aimerai qu'il puisse l'envoyer sur un serveur pour être sauvegardée et visible dans un extranet le tout via un webservice.
J'ai lu plusieurs sujets à ce propos sur le forum PCSoft ou la solution semble être de passer par une chaine cryptée en base64, le problème est que dans windev mobile EncodeBASE64 ne fonctionne pas.
J'ai tenté de stocker cette image dans un buffer, puis d'enregistrer le contenu du buffer dans une chaine (UTF8VersChaine) de crypter la chaine obtenue avec la fonction crypte et le type de cryptage crypteSécurisé.
Le tout par bien via le webservice et dans mon extranet lorsque je fais les manipulations inverses à savoir :
- décryptage de la chaine - enregistrement du contenu de la chaine ds un buffer avec ChaineVersUTF8 - enregistrement en base du buffer dans une rubrique de type image, son, ... - création du fichier avec hExtraitMemo
Résultat, le fichier créé n'est pas lisible.
Auriez-vous une piste ?
Merci |
| |
| |
| | | |
|
| | |
| |
Posté le 05 août 2015 - 17:47 |
Bonjour Nico,
tu as un exemple complet pour ca dans wxreplication. Mais le principe :
comme encodeage base 64 n'est pas dispo et que les fonctions de cryptages (anciennes) ne sont pas compatibles entre android et windows, il faut: - mettre l'image dans un buffer - utiliser buffervershexa pour transformer ca en chaine - puis si tu veux encrypter, utiliser les nouvelles fonctions cryptestandard
Cordialement
-- Fabrice Harari Consultant WinDev, WebDev et WinDev Mobile International
Disponible : WXShowroom.com, WXReplication (open source) Bientôt : WXEDM (open source) Plus d'information sur http://fabriceharari.com
On 8/5/2015 9:16 AM, Nico wrote:
Bonjour,
dans une application android l'utilisateur peut prendre une photo avec son smartphone et j'aimerai qu'il puisse l'envoyer sur un serveur pour être sauvegardée et visible dans un extranet le tout via un webservice.
J'ai lu plusieurs sujets à ce propos sur le forum PCSoft ou la solution semble être de passer par une chaine cryptée en base64, le problème est que dans windev mobile EncodeBASE64 ne fonctionne pas.
J'ai tenté de stocker cette image dans un buffer, puis d'enregistrer le contenu du buffer dans une chaine (UTF8VersChaine) de crypter la chaine obtenue avec la fonction crypte et le type de cryptage crypteSécurisé.
Le tout par bien via le webservice et dans mon extranet lorsque je fais les manipulations inverses à savoir :
- décryptage de la chaine - enregistrement du contenu de la chaine ds un buffer avec ChaineVersUTF8 - enregistrement en base du buffer dans une rubrique de type image, son, ... - création du fichier avec hExtraitMemo
Résultat, le fichier créé n'est pas lisible.
Auriez-vous une piste ?
Merci |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 397 messages Popularité : +13 (13 votes) |
|
Posté le 05 août 2015 - 19:21 |
Bonsoir,
Parmi les solutions les plus courantes : - Bien spécifier le même type de chaine (ANSI ou Unicode) des deux côtés. En effet, WM est nativement en Unicode, WD en ANSI. Il faudra d'un côté ou de l'autre spécifier manuellement le type de chaine. A vous de voir de quel côté vous préférez le faire (soit déclarer une chaine Unicode côté WD, soit une chaine ANSI côté WM) - La fonction Crypte classique ne donne pas les mêmes résultats sur les différentes plateformes. PC Soft a sorti la fonction CrypteStandard sensée remédier à ce problème, mais je ne l'ai pas testée personnellement. - Dans le pire des cas, directement passer par un FTP pour faire l'envoi des fichiers. Pas idéal en terme de connexion, mais les traitements "lecture > encodage > base64 > transfert http > unbase64 > decodage > enregistrement" n'ont plus lieu d'être et le "job" se résume à traiter un fichier image classique.
Le problème peut quelques fois être plus sordide que cela, mais on peut commencer par ça.
Cordialement, |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 657 messages Popularité : +175 (223 votes) |
|
Posté le 05 août 2015 - 20:18 |
| |
| |
| | | |
|
| | |
| |
Posté le 06 août 2015 - 09:56 |
Merci Fabrice
effectivement j'ai juste eu besoin d'utiliser BufferVersHexa pour que mon code fonctionne. J'ai laissé de côté le cryptage pour le moment.
Merci aux autres également pour vos réponses.
Bonne journée |
| |
| |
| | | |
|
| | |
| |
Posté le 28 septembre 2015 - 16:32 |
Bonjour,
J'ai vu que tu avais résolu ton problème, mais j'avais une question.
Je fais la même chose que toi (photo du smartphone que j'envoie via un webservice dans une base hf) mais je me contente d'un fchargebuffer dans un buffer que je transmets à mon web service qui à reception l'insére dans une base hf (colonne binaire).
A aucun moment je n'utilise UTF8VersChaine ... quel intérêt dans le cas qui nous intéresse ?
Merci |
| |
| |
| | | |
|
| | |
| |
Posté le 15 novembre 2015 - 17:09 |
Bonjour Fabrice Je n'arrive pas à trouver l'exemple dans WXReplication. Peux tu me donner une indication
Merci d'avance |
| |
| |
| | | |
|
| | |
| |
Posté le 15 novembre 2015 - 17:10 |
Nico Peux tu me montrer ton code coté android et coté webservice. Merci d'avance |
| |
| |
| | | |
|
| | |
| |
Posté le 15 novembre 2015 - 19:10 |
Stephane Derrick a utilisé son clavier pour écrire :
Bonjour Fabrice Je n'arrive pas à trouver l'exemple dans WXReplication. Peux tu me donner une indication
Merci d'avance
Ah bon ?
-- ------------------------------------------------------------- www.ctc-soft.com Gestion biblo-documentaire (free-share) Comptabilité shareware Logiciels de Gestion de saisie terrain Spécialisé Tournées de boulangers ------------------------------------------------------------- |
| |
| |
| | | |
|
| | |
| |
Posté le 15 septembre 2017 - 07:10 |
Bonjour,
J'ai exactement le même souci. Voilà ce que j'ai tenté côté Windev mobile :
bufImage est un buffer bufImage = imgLogo stAccount.sImage = BufferVersHexa(bufImage) Ca, ça part dans un WebService via un buffer sérialisé en xml
Voici le code de récupération côté WebService :
bufImage est un Buffer bufImage = HexaVersBuffer(stAccount.sImage) gl_team_account.imgLogo = bufImage
Et mon image ne s'affiche pas, pourtant mon buffer n'est pas vide. En fait j'ai l'impression que ça me renvoie le chemin de l'image et non l'image elle-même.
Pouvez-vous m'aider ?
Merci |
| |
| |
| | | |
|
| | |
| |
Posté le 16 septembre 2017 - 08:08 |
Je remonte le sujet svp Merci |
| |
| |
| | | |
|
| | |
| |
Posté le 15 janvier 2018 - 17:26 |
Zoomeo
J'ai le même problème, pourriez-vous le résoudre? .. comment?
Merci Victor
--- El software de antivirus Avast ha analizado este correo electrónico en busca de virus. https://www.avast.com/antivirus |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 2 574 messages Popularité : +222 (260 votes) |
|
Posté le 16 janvier 2018 - 08:30 |
Bonjour,
Sujet maintes fois discuté ici, c'est un problème de codage des caractères. WM est en Unicode et Windows en ANSI. Il faut donc transformer la chaine en utf8 à partir de WM et la repasser en ANSI une fois arrivée sur Windows. Voir les fonctions ChaineVersUtf8 et utf8VersChaine.
-- Cordialement,
Philippe SAINT-BERTIN Géode Informatique |
| |
| |
| | | |
|
| | |
| |
Posté le 16 janvier 2018 - 10:42 |
Bonjour,
voici mon code.
Dans Windev Mobile :
L'image est stockée en base dans une rubrique de type image (mémo binaire).
MonWS.sImage = BufferVersHexa(matable.image)
MonWS.sImage est définit dans le webservice Webdev comme une chaine unicode
En réception dans le webservice Webdev :
matable.image= HexaVersBuffer(MaChaineImage)
Et c'est tout, je ne crypte rien je n'en ai pas l'utilité dans ce cas. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 1 623 messages Popularité : +100 (114 votes) |
|
Posté le 16 janvier 2018 - 10:48 |
Une autre astuce consiste à coder l'image en base64 avant l'envoi. Ainsi il n'y a plus de problème d'encodage (ANSI / UNICODE) |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 2 574 messages Popularité : +222 (260 votes) |
|
Posté le 16 janvier 2018 - 15:05 |
as-tu comparé tes valeurs hexa au départ et à l'arrivée pour voir si elles sont identiques ?
-- Cordialement,
Philippe SAINT-BERTIN Géode Informatique |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 657 messages Popularité : +175 (223 votes) |
|
Posté le 16 janvier 2018 - 16:24 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 81 messages Popularité : +2 (4 votes) |
|
Posté le 26 juin 2019 - 12:21 |
| |
| |
| | | |
|
| | |