www.IT-Visions.de-Diskussionsforen (Version 2.1)
(Diese Seite wurde noch nicht auf das neue Layout umgestellt!)


Diese Foren stehen den Lesern unserer Bücher und allen anderen registrieren Benutzern dieser Website zur Verfügung. Wir würden uns freuen, wenn viele Nutzer dieser Website hier nicht nur Fragen stellen, sondern auch die Fragen anderer Nutzer beantworten. Diese Foren sind ein ehrenamtlicher, nicht-kommerzieller, unmoderierter Community-Dienst von www.IT-Visions.de. Wenn Sie kommerzielle Unterstützung für .NET/Scripting/PowerShell suchen, schauen Sie bitte auf unser Support-Angebot und unsere Schulungsangebote für Scripting und Schulungsangebote für .NET.



Typen unverträglich; VBScript
Autor:  ManfredKoch
E-mail:  Antworten bitte nur in das Forum!
Datum:  24.01.2006 09:35:12
Subject:  Typen unverträglich; VBScript
Bezug zum Buch:  -
Message:  Hallo,

ich möchte mit VBScript ein Programm (SolidWorks) automatisieren. Es ist nur eine Kleinigkeit, nämlich Programm starten, Datei öffnen, Datei speichern unter, fertig. Es scheitert aber leider am Öffen der Datei ich erhalte dann immer einen Laufzeitfehler (Typen unverträglich: 'OpenDoc6'; Code 800A000D). Ich habe jedoch in VBScript keine Möglichkeit den Variabelntyp festzulegen (ausser mit einem kleinen Trick, der aber nicht den Fehler beseitigt). Schreibe ich dagegen ein Makro in z.B. Excel, dann funktioniert es prima. Gibt es eine Möglichkeit hier doch noch zu einer Lösung zu kommen. Über Antworten würde ich mich sehr freuen. Ich habe das VBScript und auch das VBA-Makro beigefügt.

Vielen Dank

Manfred Koch

###########################VBScript
' SolidWorksAufrufen.vbs
' Ruft SolidWorks auf
' Autor: Manfred Koch
' verwendet: ???
' ==============================================
'Option Explicit

Dim swApp
Dim swDoc
Dim Errors
Dim Warnings
Dim retval
Dim Status

Const swDocNONE = 0
Const swDocPART = 1
Const swDocASSEMBLY = 2
Const swDocDRAWING = 3

Const swSaveAsOptions_Silent = 1
Const swSaveAsOptions_Copy = 2
Const swSaveAsOptions_SaveReferenced = 4
Const swSaveAsOptions_AvoidRebuildOnSave = 8
Const swSaveAsOptions_UpdateInactiveViews = 16
Const swSaveAsOptions_OverrideSaveEmodel = 32
Const swSaveAsOptions_SaveEmodelData = 64
Const swSaveAsOptions_DetachedDrawing = 128

Const swOpenDocOptions_Silent = 1
Const swOpenDocOptions_ReadOnly = 2
Const swOpenDocOptions_ViewOnly = 4
Const swOpenDocOptions_RapidDraft = 8
Const swOpenDocOptions_LoadModel = 16
Const swOpenDocOptions_AutoMissingConfig = 32

Const swSaveAsCurrentVersion = 0

Const ZeichnungsDatei = "P:\Solidworks\Platte3.SLDDRW"

Errors = CLng("0")
Warnings = CLng("0")
retval = CLng("0")
Status = CLng("0")

WScript.Echo "Errors: " & TypeName(Errors)
WScript.Echo "Warnings: " & TypeName(Warnings)
WScript.Echo "retval: " & TypeName(retval)
WScript.Echo "Status: " & TypeName(Status)

' WScript.Quit

' SolidWorks Objekt erzeugen (Starten)
Set swApp = CreateObject("SldWorks.Application")
swApp.Visible = True
'swApp.UserControl = True

Set swDoc = swApp.OpenDoc6(ZeichnungsDatei, swDocDRAWING, swOpenDocOptions_ReadOnly, "", Errors, Warnings)
'swDoc.SaveAs2 "P:\Solidworks\Platte3.PDF", 0, True, False
'swApp.CloseDoc "Platte3 - Blatt1"

MsgBox "SolidWorks Beenden", vbInformation

swApp.ExitApp
Set swApp = Nothing

WScript.Echo "Fertig!"

###########################VBScript

###########################VBA-Makro
Sub Testmakro()
'
' Soll SolidWorks starten und ein Dokument öffnen
' Makro vom 23.1.2006 von Manfred Koch
'
Dim swApp As Object
Dim swDoc As Object

Dim Errors As Long
Dim Warnings As Long
Dim retval As Long
Dim Status As Long

Const swDocNONE = 0
Const swDocPART = 1
Const swDocASSEMBLY = 2
Const swDocDRAWING = 3

Const swSaveAsOptions_Silent = 1
Const swSaveAsOptions_Copy = 2
Const swSaveAsOptions_SaveReferenced = 4
Const swSaveAsOptions_AvoidRebuildOnSave = 8
Const swSaveAsOptions_UpdateInactiveViews = 16
Const swSaveAsOptions_OverrideSaveEmodel = 32
Const swSaveAsOptions_SaveEmodelData = 64
Const swSaveAsOptions_DetachedDrawing = 128

Const swOpenDocOptions_Silent = 1
Const swOpenDocOptions_ReadOnly = 2
Const swOpenDocOptions_ViewOnly = 4
Const swOpenDocOptions_RapidDraft = 8
Const swOpenDocOptions_LoadModel = 16
Const swOpenDocOptions_AutoMissingConfig = 32

Const swSaveAsCurrentVersion = 0

Const ZeichnungsDatei = "P:\Solidworks\Platte3.SLDDRW"

MsgBox "Errors: " & TypeName(Errors)
MsgBox "Warnings: " & TypeName(Warnings)
MsgBox "retval: " & TypeName(retval)
MsgBox "Status: " & TypeName(Status)


Set swApp = CreateObject("SldWorks.Application")
swApp.Visible = True
' swApp.UserControl = True
' MsgBox "SolidWorks-Version: " & swApp.DateCode

Set swDoc = swApp.OpenDoc6(ZeichnungsDatei, swDocDRAWING, swOpenDocOptions_ReadOnly, "", Errors, Warnings)

End Sub

###########################VBA-Makro

Antworten

  Zurück zum Forum



 Klassische Programmierung (Scripting, COM) -- Windows Scripting, VBScript, VB6, u.a.
 Typen unverträglich; VBScript von ManfredKoch  am 24.1.2006 9:35:12 AM


www.IT-Visions.de - Dr. Holger Schwichtenberg / 1998-2019