Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : sérialization [VB 2005] [ Divers / General ] (Kite37)

lundi 26 février 2007 à 14:52:22 | sérialization [VB 2005]

Kite37

Bonjour ! Pour les besoin d'un jeu, j'ai créé un éditeur de cartes qui sérialise celles-ci en un seul fichier pour gagner du temps. L'éditeur permet donc de sérialiser la map pour enregistrement, et ou de la désérialiser pour modifications. Jusqu'ici, aucun problème. Ensuite, j'ai voulu créer une petite application simple pour faire des tests avec les map produites, et c'est la que se pose le problème : le fichier n veut pas se désérialiser dans un autre logiciel que celui qui la créé .. Quelqu'un a une idée? voici l'erreur qui se produit : "Impossible de trouver l'assembly 'Editeur de Map, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'." et voici les codes de sérialisation et de désérialisation : Private Function enregistrer() As Boolean 'la sub qui sérialise la map dans le fichier spécifié par l'utiliateur 'avec "map.bin" par défault. Dim question As Short = MessageBox.Show("Si le fichier existe déja, il va etre remplacé. Continuer?", "Enregistrer", MessageBoxButtons.YesNo) If question = DialogResult.Yes Then enregistrer = True 'pour ce genre de chose, il vaut mieux essayer :p Try Dim serializer As Runtime.Serialization.Formatters.Binary.BinaryFormatter = _ New Runtime.Serialization.Formatters.Binary.BinaryFormatter Dim stream As FileStream = New FileStream(chemin & "\map.bin", FileMode.Create) serializer.Serialize(stream, map1) stream.Close() MessageBox.Show("Map enregistrée avec succès a l'emplacement : " & "[" & chemin & "\map.bin ]") Return True Catch Return False End Try Else : Return False End If End Function Dim deserializer As Runtime.Serialization.Formatters.Binary.BinaryFormatter = _ New Runtime.Serialization.Formatters.Binary.BinaryFormatter Dim stream As FileStream = New FileStream(repertoire & "\map.bin", FileMode.Open) map1 = deserializer.Deserialize(stream) 'erreur se produit ici stream.Close() Merci d'avance :)

mercredi 28 février 2007 à 20:54:12 | Re : sérialization [VB 2005]

ShareVB

salut,

si ca réclame l'assembly d'origine, je pense que c'est parce que le l'élément root ou le <? ?> contiennent des références à ton assembly :
-> est-ce que la classe que tu sérializes possède l'attribut [XmlRoot("racine")]
-> peux-tu donner les quelques premières lignes du fichier XML de la sérialization ?

ShareVB

jeudi 1 mars 2007 à 10:36:51 | Re : sérialization [VB 2005]

Kite37

Réponse acceptée !
je ne sérialise pas en XML, je sérialise ma classe dans un fichier binaire. la première ligne du fichier obtenu commence par : 'Editeur de Map, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'." qui apparait aussi dans le message d'erreur. J'ai cependant réussi a trouver un moyen de ne plus être géné par l'assembly (merci Malkuth) : j'ai tout simplement mis ma classe sur une DLL. Lors de la sérialisation, sa prend l'assembly de la DLL, qui est alors la meme lors de la désérialisation. Ca ne fait que contourner le problème, mais ça marche ^ ^ Voilou

jeudi 1 mars 2007 à 11:12:36 | Re : sérialization [VB 2005]

ShareVB

salut,

oupss, j'avais lu trop vite...cela dit l'erreur parait logique pour la sérialization binaire car il faut exactement la définition (ordres des champs privés, ...) de la classe donc de son assembly...une solution  habituelle est de mettre des méthodes Shared Serialize et Shared Deserialize dans la classe que l'on sérialize...comme ça on est obligé d'avoir la référence à l'assembly de la classe pour la sérialisation et désérialisation...

ShareVB



Cette discussion est classé dans : fichier, stream, runtime, bin, map


Répondre à ce message

Sujets en rapport avec ce message

Ouvrir un fichier kml [ par KIPRE74 ] Bonjour à tous ! J'ai développé une application pour Pocket PC qui me permet de sauvegarder des informations (coordonnées GPS) sous fichier .kml. J'a Conversion de fichiers? [ par abba ] Salut,Comment convertir et enregistrer un fichier .txt en fichier .bin (31 = 1 ; 42 = B ; etc..) ??? ET inversement.Pouvoir aussi le faire avec le for Aide pour un débutant [ par nandofive ] Bonjour J' ai créér l' interface de mon programme qui devrait permettre de modifier les extrait d' un fichier .binexemple du fichier : (offset ) Stream NTFS en VB [ par UnExPeCtEdSpy ] Bonjour,Voila, j'pose pas souvent d'kestion pis la j'en ai une alors j'me géne pas :)J'arrive a créer , récupérer, détruire un alternate Stream dans u Fichier Setup.lst (RUNTIME ACCESS) a recuperer [ par ketu ] voila je voudrais recuperer le fichier setup.lst dune application qui se trouve dans office developer: lapplication cest lassistant dempaquetage et de Scripting runtime... [ par Rabba ] Hello tout le monde!Est-ce qu'il y aurait qqun qui pourrait m'aider, j'ai un problème... J'aimerais créer un fichier texte contenant les 10 meilleurs Lire un fichier format dos [ par ayyhmm ] Bonsoir, J'ai des fichiers textes générés à partir d'un code source CLIPPER. La consultation de ces fichiers est lisible sous dos. Mon objectif est d Editeur de lien LD.EXE : bug ? [ par vinc1008881 ] Salut tout le monde, depuis quelques temps j'essaye de compiler des binaires plats avec gcc et ld, mais ld fait des erreurs ? voici comment je fait : patch séparation adresses paires et impaires d'un fichier .bin [ par vincentj59 ] Bonjour.J'essai de programmer un petit patch en VB6 qui me permettrait d'ouvrir un fichier .bin ("source.bin") et de créer à partir de celui-ci deux f Envoyer fichier bin par port série [ par branquartn ] Bonjour j aurais voulu savoir comment faire pour envoyer un fichier bin par l intermediaire dur port com. en utilisant la fonction mscomm par exemple


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,608 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.