Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Crash bei VB und verknüpftem PDF!?

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 SOLIDWORKS
  
3DEXPERIENCE Conference 2026, eine Veranstaltung am 16.06.2026
Autor Thema:  Crash bei VB und verknüpftem PDF!? (824 mal gelesen)
djockheck
Mitglied
Leiter IT-Support


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

Beiträge: 109
Registriert: 07.08.2001

SolidWorks 2016, SP5
Windows 10

erstellt am: 09. Okt. 2008 17: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

Hallo!

- Ich habe hier ein Einzelteil mit einem verknüpften PDF. (Anlagen hinzufügen... und ein Häckchen bei Verknüpfung setzen)
- Jetzt nehme ich mit SW (Version 2006, 2007 oder 2008) ein Makro auf, in welchem ich die obige Datei öffne und wieder schließe.
- Das Makro für sich läuft einwandfrei.
- Nun baue ich dieses Makro in einen CommandButton von VB6 ein.
- Lasse ich das VB-Script laufen, so stürzt SolidWorks ab 

Getestet mit SW 2006, 2007 und 2008.

Kann von euch jemand dieses Problem nachvollziehen?

ciao
Detlef

PS: Bin erst ab dem 15.10.08 wieder erreichbar. Ihr habt also ein paar Tage Zeit zum probieren...

Hier mein VB-Code:

<cut>
Private Sub Command5_Click()
' ******************************************************************************
' C:\DOKUME~1\g005696.CAD\LOKALE~1\Temp\swx3948\Macro1.swb - macro recorded on 10/09/08 by g005696
' ******************************************************************************
Dim swApp As Object
Dim Part As Object
Dim SelMgr As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
Dim Feature As Object

'Set swApp = Application.SldWorks
Set swApp = CreateObject("SldWorks.Application")

Set Part = swApp.OpenDoc6("N:\mein_Teil.SLDPRT", 1, 0, "", longstatus, longwarnings)
Set Part = swApp.ActivateDoc2("mein_Teil.SLDPRT", False, longstatus)
swApp.ActiveDoc.ActiveView.FrameLeft = 0
swApp.ActiveDoc.ActiveView.FrameTop = 0
swApp.ActiveDoc.ActiveView.FrameState = 1
swApp.ActiveDoc.ActiveView.FrameState = 1
swApp.ActiveDoc.ActiveView.FrameState = 1
Set Part = Nothing
swApp.CloseDoc "mein_Teil.SLDPRT"

End Sub
</cut>

------------------
--
Detlef Jockheck

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

KMassler
Ehrenmitglied V.I.P. h.c.
CAD Admin + Mädchen für Alles...



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

Beiträge: 2675
Registriert: 06.11.2000

SolidWorks Start 1999
** CSWP 01/2008 **
------------------
Zuletzt beruflich:
- SWX2020 SP5;
- SAP/PLM+ECTR;
- DriveWorks Pro;
- Programmierung:
VBA, aktuell Visual Studio 2022/VB.Net
------------------
ab 2024 (privat):
Onshape und anderes

erstellt am: 10. Okt. 2008 09: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 djockheck 10 Unities + Antwort hilfreich

Also bei mir läuft dein Code problemlos.

Allerdings solltes du noch den Macrorecorder-Müll beseitigen.
Das hier reicht

Code:
...
Set swApp = CreateObject("SldWorks.Application")
Set Part = swApp.OpenDoc6("N\mein_Teil.SLDPRT", 1, 0, "", longstatus, longwarnings)
Set Part = Nothing
swApp.CloseDoc "mein_Teil.SLDPRT"
...

und dafür noch Prüfungen einbauen,
- ob SWX läuft,
- ob das Öffnen geklappt hat
- ...

------------------
Klaus

www.al-ko.com | mein Gästebuch | privat...

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

djockheck
Mitglied
Leiter IT-Support


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

Beiträge: 109
Registriert: 07.08.2001

SolidWorks 2016, SP5
Windows 10

erstellt am: 16. Okt. 2008 09:28    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!

Ich denke die Ursache liegt darin, daß mein Makro versucht, die Datei zu schließen bevor der Ladevorgang entgültig abgeschlossen ist. Zumindest passiert nichts, wenn ich nach dem Laden eine Message-Box einbaue und warte bis der Ladevorgang abgeschlossen ist. Nur wie wartet man per Macro auf einen abgeschlossenen Ladevorgang?

ciao
Detlef

------------------
--
Detlef Jockheck

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