Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  AutoCAD VBA
  Speicher zugemüllt ?!?

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
  
PNY wird von NVIDIA zum Händler des Jahres gewählt - zum dritten Mal in Folge, eine Pressemitteilung
Autor Thema:  Speicher zugemüllt ?!? (877 mal gelesen)
dobatec
Mitglied
st.gepr.Baut./Stud. W.Inf.


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

Beiträge: 34
Registriert: 23.03.2006

AutoCad2006,AcadBau2000,ADT3.0,
AMD64.3800

erstellt am: 24. Apr. 2006 23:34    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 Freunde der VBA Kunst!

Hoffe mal wieder auf eure Tipps bei folgendem Problem: Mein VBA Projekt öffnet ca. 3000 mal eine MasterDWG die viele Bauteile als Blöcke enthält. Nach Vorgabe aus einer Excel Tabelle lasse ich dann aus definierten Bauteilen eine Zeichnung zusammenbauen und diese wird dann (Nachdem sie von den unnötigen Bauteilen bereinigt wurde), unter einem ebenso definierten Namen in drei verschiedenen Formaten nacheinander abgespeichert. Nach den ganzen SaveAs Anweisungen schließe ich die bereinigte MasterDoc und öffne diese dann im nächsten Durchgang wieder um die nächste Zeichnung zu generieren.

Das Problem liegt nun darin, dass die Sache zu Anfang recht flott von Statten geht, bei weiterm Fortschritt aber immer langsamer abläuft.

Kann es sein das dies irgendwie mit dem Thema der Sicherungskopien zu tun hat und ich dort eventuell etwas deaktivieren muss? Wie könnte ich das Problem ansonsten lösen?

Danke Euch schon im Vorab

Gruß dobatec

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

BerndE
Mitglied
Hochbautechniker


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

Beiträge: 557
Registriert: 05.07.2003

erstellt am: 25. Apr. 2006 01:06    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 dobatec 10 Unities + Antwort hilfreich

an den sicherungsdateien wird es wohl nicht liegen.
hast du deine set-anweisungen am ende des codes auf nothing gesetzt?
bernd

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

Bernd

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

dobatec
Mitglied
st.gepr.Baut./Stud. W.Inf.


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

Beiträge: 34
Registriert: 23.03.2006

AutoCad2006,AcadBau2000,ADT3.0,
AMD64.3800

erstellt am: 25. Apr. 2006 08:02    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 Bernd,

meinst du nach den SaveAs Anweisungen? Ich habe die Prozedur bzw. den Abschnitt mit ganz einfach mit Ac_MasterDoc.Close abgeschlossen und fahre dass mit einer Unterpozdeur mit Ac_MasterDoc.Open(Path etc...) weiter.
Was bewirkt Set ... = Nothing im benannten Problem?

Gruß

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

Stelli1
Moderator
Verm.-Ing.


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

Beiträge: 1526
Registriert: 17.08.2005

Map 2000-2014, Rasterdesign,
MapGuide, Autodesk Topobase,
VS6, VS.net 2013

erstellt am: 25. Apr. 2006 11:38    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 dobatec 10 Unities + Antwort hilfreich

Hallo,

ich habe nicht ganz verstanden wieso die Zeichnung 3000 geöffnet wird. Holst du Blöcke aus anderen Zeichnungen (Vorlagen) ?

Bernd meint folgendes:
Du deklarierst z.B. mit DIM Master_Doc as AcadDocument ein Objekt vom Typ Dokument. Mit Set Master_Doc = Thisdrawing instanzierst du eine Klasse im Speicher. Diese bleibt auch nach deinen SaveAs im Speicher.Am Ende deiner Prozedur sollest du mit Set Master_Doc= nothing die Instanz der Klasse aus dem Speicher entfernen.

Schaeu doch auch mal wo deine Undo Datei ist und beobachte wie gross sie wird. Hieran kann es auch noch liegen.

Stelli

------------------
Warum lisp'eln wenn's auch anders geht.
www.ib-stelberg.de

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

dobatec
Mitglied
st.gepr.Baut./Stud. W.Inf.


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

Beiträge: 34
Registriert: 23.03.2006

AutoCad2006,AcadBau2000,ADT3.0,
AMD64.3800

erstellt am: 25. Apr. 2006 17:39    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 Stelli,

wo und wie verschaffe ich mir Einischt in die Undo Datei?

Mein Problem besteht trotz Set Ac_MasterDol = Nothing immer noch.
Meine Vorgehensweise sieht wie folgt aus

1. Ich öffne die MasterDoc

Set Ac_MasterDoc = Thisdrawing.Document.Open(Path)
Ac_MasterDoc.Activate

2. Ich baue aus den vielen Blöcken der MasterDoc eine Zeichnung

Ich erstelle einen neuen Block und zeichne direkt in in:
Zeichne in Block den Block 1,2,3,4 etc.
Zeichne in Block eine Linie etc.
Danach füge ich diesen Block im ModelSpace ein und
bereinige mit PurgeAll die "Ursprungs"-Blöcke

3. Nun Speichere ich im Maximalfall 3 mal

Ac_MasterDoc.SaveAs etc. als DWG
Ac_MasterDoc.SaveAs etc. als DXF
Ac_MasterDoc.SaveAx etc. als DWG mit anderem Dateinamen

4. Nun beende ich die Schleife wie folgt

Ac_MasterDoc.Close False
Set Ac_MasterDoc = Nothing

5. Nun geht es wieder an das öffnen

Set Ac_MasterDoc = ThisDrawing.Document.Open(Path)
Ac_MasterDoc.Activate

... das ganze ca. 3000 - 5000 mal in einer Schleife

zu Beginn klappt das ganze im Sekundentakt, ab Zeichnung Nr. 100 gehts schon 2-5 Sekunden und ab der 300 sten fast 20 Sekunden

Wenn ich den Vorgang abbreche, braucht AutoCad Weigkeiten beim nächsten Start und bietet mir eine unendlich lange Liste von Zeichnungen zur Wiederherstellung an.

Wie kann ich das Problem lösen?

Danke

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

dobatec
Mitglied
st.gepr.Baut./Stud. W.Inf.


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

Beiträge: 34
Registriert: 23.03.2006

AutoCad2006,AcadBau2000,ADT3.0,
AMD64.3800

erstellt am: 25. Apr. 2006 18:06    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

Nochmal ein Versuch,

hab das ganze mal im SDI probiert und da funkts wie nix. Wie kann ich das ganze aber im MDI realisieren ohne das es mir den Arbeitsspeicher zumüllt?

Gruß

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)2025 CAD.de | Impressum | Datenschutz