Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  AutoCAD ObjectARX und .NET
  Event Database.BeginSave

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Event Database.BeginSave (1251 / mal gelesen)
Theo37
Mitglied
Techniker


Sehen Sie sich das Profil von Theo37 an!   Senden Sie eine Private Message an Theo37  Schreiben Sie einen Gästebucheintrag für Theo37

Beiträge: 423
Registriert: 08.10.2008

erstellt am: 06. Mai. 2016 13:05    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo an Alle,

ich habe ein Problem mit Events. Ich wollte ein Programm schreiben das immer bevor die Datei gespeichert wird ein paar Attribute ausliest. Dafür wäre ja das BeginSave Event genau richtig.
Aber wie kriege ich es an jede Database ran? Und am besten sollte es vor jedem Speichern auch nur einmal ausgeführt werden. Die Vorgehensweise unten funktioniert soweit, nur nicht bei der ersten Datei die geöffnet wird. Also wenn ich eine DWG doppelklicke und diese dann speichere wird der Befehl leider nicht ausgeführt. Öffne ich eine weiter Datei dann klappt es auch wenn ich zu der ursprünlichen Datei zurück kehre. Gibt es eine Alternative zu DocumentActivated, die bei jedem Dateiöffnen ausgeführt wird?
Oder weiß jemand ein Beispiel wie man das BeginSave Event anders verwendet?
Danke Theo


Public Class Events
    Private Shared pDocManager As Autodesk.AutoCAD.ApplicationServices.DocumentCollection = Nothing
    Private Shared MyDB As Database = Nothing
    Public Class Mirror_Initialize
        Implements Autodesk.AutoCAD.Runtime.IExtensionApplication
        Public Sub Initialize() Implements Autodesk.AutoCAD.Runtime.IExtensionApplication.Initialize

            Try
                pDocManager = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager

                AddHandler pDocManager.DocumentActivated, AddressOf DocActivated
                AddHandler pDocManager.DocumentToBeDeactivated, AddressOf DocdeActivated
            Catch
                Call MsgBox("Error initializing CADde_DocEvents", MsgBoxStyle.Critical, "CADde_DocEvents FEHLER")
            End Try


        End Sub

        Private Shared Sub DocActivated(ByVal sender As Object, ByVal e As Autodesk.AutoCAD.ApplicationServices.DocumentCollectionEventArgs)
            Try
                MyDB = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Database

                AddHandler MyDB.BeginSave, AddressOf SerchforLinks

            Catch
                Call MsgBox("Automatisches Aktualisieren ging schief", MsgBoxStyle.Critical)
            End Try

        End Sub


        Private Shared Sub DocdeActivated(ByVal sender As Object, ByVal e As Autodesk.AutoCAD.ApplicationServices.DocumentCollectionEventArgs)
            Try
                RemoveHandler MyDB.BeginSave, AddressOf SerchforLinks

            Catch
                MsgBox("Fehler bei Terminate")
            End Try


        End Sub
        Public Sub Terminate() Implements Autodesk.AutoCAD.Runtime.IExtensionApplication.Terminate
            Try

                If pDocManager IsNot Nothing Then RemoveHandler pDocManager.DocumentBecameCurrent, AddressOf DocActivated

            Catch
                MsgBox("Fehler bei Terminate")
            End Try


        End Sub
    End Class

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Ingenieur Studio HOLLAUS
Mitglied
CAD / CAFM / GIS Beratung-Programmierung-Schulung


Sehen Sie sich das Profil von Ingenieur Studio HOLLAUS an!   Senden Sie eine Private Message an Ingenieur Studio HOLLAUS  Schreiben Sie einen Gästebucheintrag für Ingenieur Studio HOLLAUS

Beiträge: 1049
Registriert: 06.11.2008

Autocad 2 bis Autocad 2020 (+Map3D, +Civil3D, +Infraworks)
RKV .... CAFM+mehr
HMap ... Vermessung und Verkehr
OoC .... Raumplanung
CBox ... Tools für AutoCAD und BricsCAD (kostenfrei)

erstellt am: 07. Mai. 2016 15:04    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Theo37 10 Unities + Antwort hilfreich

Zitat:
Die Vorgehensweise unten funktioniert soweit, nur nicht bei der ersten Datei die geöffnet wird
Dann starte die Sub DocActivated am Ende Deines Initialize Codes.

------------------

[Diese Nachricht wurde von Ingenieur Studio HOLLAUS am 07. Mai. 2016 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Theo37
Mitglied
Techniker


Sehen Sie sich das Profil von Theo37 an!   Senden Sie eine Private Message an Theo37  Schreiben Sie einen Gästebucheintrag für Theo37

Beiträge: 423
Registriert: 08.10.2008

erstellt am: 10. Mai. 2016 08:07    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke schön. Das war die Lösung. Manchmal ist es so einfach und man kommt trotzdem nicht drauf.

Gruß Theo

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz