This example shows how to set and get the paths and file names of DraftSight system files.
'-------------------------------------------------------------- 'Preconditions: ' 1. Create a VBA macro in a software product in which VBA is ' embedded. ' 2. Copy and paste this example into the Visual Basic IDE. ' 3. Add a reference to the DraftSight type library, ' install_dir\bin\dsAutomation.dll. ' 4. Start DraftSight. ' 5 Open the Immediate window. ' 6. Run the macro. ' ' Postconditions: ' 1. The paths to the DraftSight font and support files are set. ' 2. The paths and names of the DraftSight system files are printed ' to the Immediate window. '----------------------------------------------------------------
Option Explicit
Sub main()
Dim dsApp As DraftSight.Application Dim dsSystemFiles As DraftSight.SystemFiles Dim setFontPaths(1) As String Dim setSupportPaths(2) As String Dim getFontPaths As Variant Dim getSupportPaths As Variant Dim i As Long Dim arraySizeFonts As Long Dim arraySizeSupport As Long
'Connect to DraftSight Set dsApp = GetObject(, "DraftSight.Application")
'Abort any command currently running in DraftSight 'to avoid nested commands dsApp.AbortRunningCommand
'Get system files interface Set dsSystemFiles = dsApp.GetSystemFiles
'Set system files paths setFontPaths(0) = "C:\Dassault Systemes\ProgramData\DraftSight\TextFonts" setFontPaths(1) = "C:\Dassault Systemes\ProgramData\DraftSight\TablesFonts" arraySizeFonts = UBound(setFontPaths) dsSystemFiles.FontsPaths = setFontPaths
setSupportPaths(0) = "C:\Dassault Systemes\ProgramData\DraftSight\SupportPathAddins" setSupportPaths(1) = "C:\Dassault Systemes\ProgramData\DraftSight\SupportPathCustomFiles" setSupportPaths(2) = "C:\Dassault Systemes\ProgramData\DraftSight\DrawingFiles" arraySizeSupport = UBound(setSupportPaths) dsSystemFiles.supportPaths = setSupportPaths
'Get system file paths and file names Debug.Print "System files:" Debug.Print " Help file: " & dsSystemFiles.HelpFile Debug.Print " Logfile path: " & dsSystemFiles.LogFilePath Debug.Print " Dictionary file for SpellCheck: " & dsSystemFiles.MainDictionaryFile Debug.Print " Custom dictionary file: " & dsSystemFiles.CustomDictionaryFile Debug.Print " Location for temporary drawing files: " & dsSystemFiles.TempPath
getFontPaths = dsSystemFiles.FontsPaths Debug.Print " Font paths: " For i = 0 To arraySizeFonts Debug.Print (" " & getFontPaths(i)) Next i
getSupportPaths = dsSystemFiles.supportPaths Debug.Print " Support paths: " For i = 0 To arraySizeSupport Debug.Print (" " & getSupportPaths(i)) Next i
End Sub