none
R6025-pure virtual function call RRS feed

  • Frage

  • Hallo NG,

    ich brauche mal wieder Hilfe von Fachleuten!

    Ich habe ein Programm, das läuft schon seit vielen Jahren auf einer Menge Rechner. Der Quellcode wurde von mir nicht geändert.  Ich habe verschiedene Rechner auf Windows 10 umgestellt, möglicherweise ist der Fehler erst dadurch sichtbar geworden.

    Im Debug-Betrieb in Visual Studio auf meinem Rechner kommt der Fehler nicht vor. Das Programm funktioniert problemlos. Nach der Installation auf dem gleichen Rechner kommt es zu einem Laufzeitfehler: Runtime Error! Program:C:\Program File … R6025-pure virtual function call

    Das Programm arbeitet mit einem API von Autodesk Inventor zusammen. Wenn ich die Informationen im Internet richtig verstehen, dann rufe ich die API Funktion auf, bevor sie vom Compiler erzeugt worden ist.

    Frage: Wie kann ich den Programmierfehler beheben?

    Ich zeige hier mal den Code, auch wenn das wahrscheinlich nicht hilft:

    Public Sub GetAllReferentedDocuments(ByVal FullDateiname As String, ByRef Liste As Hashtable)

            Try

                Dim Info2 As New System.IO.FileInfo(FullDateiname)


                If Info2.Exists Then       

                    Dim oAS As New Inventor.ApprenticeServerComponent

                    Dim oAD As Inventor.ApprenticeServerDocument
                    oAD = oAS.Open(FullDateiname)

                    Dim oADC As Inventor.ApprenticeServerDocuments
                    oADC = oAD.AllReferencedDocuments

                    Dim DocDesEnum As Inventor.DocumentDescriptorsEnumerator
                    DocDesEnum = oAD.ReferencedDocumentDescriptors

                    If DocDesEnum.Count > 0 Then

                        Dim DocDes As Inventor.DocumentDescriptor
                        For Each DocDes In DocDesEnum

                            If Not Liste.Contains(DocDes.FullDocumentName) Then

                                Dim info As New System.IO.FileInfo(DocDes.FullDocumentName)

                                Dim Zeichnungsname As String = info.FullName.Substring(0, info.FullName.Length - info.Extension.Length) & ".idw"

                                Debug.WriteLine(Zeichnungsname)


                                Liste.Add(DocDes.FullDocumentName, Zeichnungsname)

                            End If

                            GetAllReferentedDocuments(DocDes.FullDocumentName, Liste)

                        Next

                    End If
                    oAS.Close()

                End If

            Catch ex As Exception

                MessageBox.Show("GetAllReferentedDocumentsInventorDatei" & Chr(10) & ex.ToString, "Fehler 1062", MessageBoxButtons.OK)

            End Try

        End Sub


    Mit freundlichen Grüßen Dipl. Ing. Joachim Schmäck

    Mittwoch, 14. Dezember 2016 16:40

Alle Antworten

  • Hallo Joachim,

    Der Fehlercode R6025-pure virtual function call ist ein Visual C++-Laufzeitfehler und hängt vermutlich mit der Programmierschnittstelle zusammen. Daher nehme ich an, dass die Frage im Autodesk Inventor-Forum besser aufgehoben sein wird. Mir ist z.B. dieser Thread aufgefallen, der auf den Fehler R6025 eingeht.

    Gruß,
    Dimitar


    Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „IT-Pros helfen IT-Pros“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.

    Donnerstag, 15. Dezember 2016 15:27
    Administrator
  • Hallo Dimitar,

    gute Idee, ich kannte das Forum noch nicht, bin selber bei einem andere Inventor-Forum aktiv, habe da aber nichts gefunden. Ich übersetzt den Text mal und poste ihn auch dort.

    Ich lasse die Frage weiter offen, vielleicht kommen noch andere Ideen.

     

    Danke für deine Hilfe, als Hobby-Programmierer ist man hier im Forum gut aufgehoben!


    Mit freundlichen Grüßen Dipl. Ing. Joachim Schmäck

    Freitag, 16. Dezember 2016 06:37