laptop and a wrench

Bogue

IPersistStream::Load crashes arcmap when persisting renderers that contain picturemarkersymbols are used.

Dernière publication: August 25, 2014 No Product Found
Numéro d’ID de bogue NIM006132
EnvoiJanuary 17, 2007
Dernière modificationJune 5, 2024
S’applique àNo Product Found
Version trouvée9.2
Langue du programmeVBA
StatutNon-Reproducible

Informations supplémentaires

No Public Explanation

Solution de contournement

XML Serilization seems to work with renderers that contain picture*symbols.Public Sub SaveRendererToXML()On Error GoTo EH:Dim mxDoc As IMxDocumentSet mxDoc = ThisDocumentDim gfLayer As IGeoFeatureLayerSet gfLayer = mxDoc.FocusMap.Layer(0)Dim fRenderer As IFeatureRendererSet fRenderer = gfLayer.Renderer'*** Create XmlStream and XmlWriter ***Dim pStream As IXMLStreamSet pStream = New XMLStreamDim pWriter As IXMLWriterSet pWriter = New xmlWriterpWriter.WriteTo pStream'*** Create XmlSerializer ***Dim pSerializer As IXMLSerializerSet pSerializer = New XMLSerializerpSerializer.WriteObject pWriter, Nothing, Nothing, "", "", fRenderer'*** Save stream as an xml ***pStream.SaveToFile (xmlPath)Exit SubEH:MsgBox Err.Number & vbCrLf & Err.DescriptionEnd SubPublic Sub ReadRendererFromXML()On Error GoTo EH:'*** Deserialzation of string ***Dim pStream2 As IXMLStreamSet pStream2 = New XMLStreampStream2.LoadFromFile (xmlPath)'*** Create XmlReader and pass stream ***Dim pReader As IXMLReaderSet pReader = New XMLReaderpReader.ReadFrom pStream2'*** Create XmlSerializer and Read Object ***Dim pSerializer2 As IXMLSerializerSet pSerializer2 = New XMLSerializerDim r As IFeatureRendererSet r = pSerializer2.ReadObject(pReader, Nothing, Nothing)Dim mxDoc As IMxDocumentSet mxDoc = ThisDocumentDim gfLayer As IGeoFeatureLayerSet gfLayer = mxDoc.FocusMap.Layer(0)Set gfLayer.Renderer = rmxDoc.ActiveView.RefreshmxDoc.CurrentContentsView.Refresh NothingExit SubEH:MsgBox Err.Number & vbCrLf & Err.DescriptionEnd Sub

Étapes pour reproduire

ID de bogue: NIM006132

Logiciel:

  • No Product Found

Recevoir une notification lorsque le statut d’un bogue change

Télécharger l’application Esri Support

En savoir plus sur ce sujet

Obtenir de l’aide auprès des experts ArcGIS

Contacter le support technique

Télécharger l’application Esri Support

Accéder aux options de téléchargement