UTILITAIRE DE MANIPULATION D'IMAGE

cs_asimengo Messages postés 280 Date d'inscription jeudi 24 mars 2005 Statut Membre Dernière intervention 18 mars 2009 - 17 sept. 2006 à 13:00
cs_mich95 Messages postés 27 Date d'inscription vendredi 27 janvier 2006 Statut Membre Dernière intervention 2 novembre 2009 - 27 oct. 2008 à 13:13
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/39583-utilitaire-de-manipulation-d-image

cs_mich95 Messages postés 27 Date d'inscription vendredi 27 janvier 2006 Statut Membre Dernière intervention 2 novembre 2009
27 oct. 2008 à 13:13
Bonjour,
J'ai un petit souci avec la fonction SAVE TO FILE. En effet, un message d'erreur apparaît "Type imcompatible" sur l'instruction
With vHeader
.bfType = "0x4D42" '"BM" ICI
Peux-tu m'éclaircir à ce sujet, car ton programme va me rendre de grands services, a condition de pouvoir sauvegarder les résultats.
Par avance merci.
cs_EBArtSoft Messages postés 4525 Date d'inscription dimanche 29 septembre 2002 Statut Modérateur Dernière intervention 22 avril 2019 9
4 oct. 2006 à 13:26
Ok merci pour l'info je vais voir si je peux reproduire l'erreur et comment arranger ça.

@+
cs_asimengo Messages postés 280 Date d'inscription jeudi 24 mars 2005 Statut Membre Dernière intervention 18 mars 2009
4 oct. 2006 à 12:28
J'ai placé des points d'arrêt partout où il y'avait "this.Bits".
Il s'arrête sur celui dans la procédure "RotateAndScale" et la valeur au départ est this.Bits=68485120 et après clic sur ok pour le "Rotation et Zoom" il prend la valeur this.Bits=83886080(suivant mes param)

Le plantage se situe à la sortie de l'évènement Terminate de la classe ClsImage
Private Sub Class_Terminate()
DeleteDC mhDC
End Sub
cs_EBArtSoft Messages postés 4525 Date d'inscription dimanche 29 septembre 2002 Statut Modérateur Dernière intervention 22 avril 2019 9
4 oct. 2006 à 10:02
asimengo> Ca ne doit pas venir de ta resolution je pense plutot a un pointeur qui serait a zero. Dans ce cas le prog tenterais de modifier une zone memoire inaccessible (en l'occurence à l'adresse 0). Par contre je ne sais pas pourquoi il faudrais regarder en pas a pas puis stoper sur les SAFEARRAY voir si :

this.Bits = 0

@+
cs_asimengo Messages postés 280 Date d'inscription jeudi 24 mars 2005 Statut Membre Dernière intervention 18 mars 2009
4 oct. 2006 à 09:26
je viens de reessayer la màj en chargeant l'image du ninja (Fichier/ouvrir) puis Menu Transformations/Rotation et Zoom quelque soit l'opération il y'a plantage. Idem quand je reviens à l'ancienne version.

Ma résolution d'écran 1024 x 768 (32 bits). ça fait à peine 20mn que j'ai ouvert mon pc, suite commentaire GeneticW, j'ai download la màj du 27/9 et ouvert VB en premier sur cette màj. Aucun autre programme ouvert hors mis Microsoft Outlook et Internet Explorer.

Serait-ce lié à ma résolution d'écran?
GeneticW Messages postés 34 Date d'inscription samedi 3 juin 2006 Statut Membre Dernière intervention 23 avril 2011
3 oct. 2006 à 19:01
SUPER project, merci d'avoir partager.

j'ai pas trouvé comment marchait saturation, car cela ne semble pas avoir d'effet, mais toute mes images testé sont en tons de gris alors ca peut venir de la.

Pour ce qui est du prob de memoire cannot be read, ce n'est pas un probleme du code, j'ai vérifié plusieurs fois, javais le meme probleme avec un code bitblt autrefois, le probleme viens du fait que Vb6 ne PEUT PAS afficher une form plus grande que ta dimension actuelle d'ecran. et le bug est aléatoire, donc, une fois sur 2 fonctionnera.

Si tu change ta resolution a au moins 1600 x 1200 le bug disparaitra (hey oui je sais, ca coince comme probleme, c'est tout petit en 1600x1200!)
cs_EBArtSoft Messages postés 4525 Date d'inscription dimanche 29 septembre 2002 Statut Modérateur Dernière intervention 22 avril 2019 9
17 sept. 2006 à 14:43
Asimengo> Merci pour le feedback je vais faire des tests avec des image de taille similaire pour trouver d'ou cela peut venir. Mes amitié au cameroun ;p

@+
cs_asimengo Messages postés 280 Date d'inscription jeudi 24 mars 2005 Statut Membre Dernière intervention 18 mars 2009
17 sept. 2006 à 13:00
@EB: c'est super comme dab
J'ai néanmoins eu un plantage en utilisant la rotation et zoom sur une image jpeg en 1600x1200 de 698kb. je pense avoir essayé une réduction + une rotation. "L"instruction à "0x0062006c" emploie l'adresse mémoire "0x0062006c" la mémoire ne peut pas être "read".
Bizaremment j'ai essayé 2, 3 fois encore sans plantage.
Rejoignez-nous