Sets the directory in which AutoCAD looks for external reference files.
Supported platforms: Windows only
VBA:
object.SetProjectFilePath ProjectName, ProjectFilePath
Type: PreferencesFiles
The object this method applies to.
Access: Input-only
Type: String
The name of the project. This name is also controlled by the PROJECTNAME system variable.
Access: Input-only
Type: String
The directory in which AutoCAD looks for external reference files.
No return value.
No additional remarks.
VBA:
Sub Example_SetProjectFilePath()
' This example finds the current project file information, changes
' that information, and finally resets the information back to the
' original values.
Dim preferences As AcadPreferences
Set preferences = ThisDrawing.Application.preferences
' Get the current project file information
Dim currProjPath As String
Dim currProjName As Variant
currProjName = ThisDrawing.GetVariable("PROJECTNAME")
If currProjName <> "" Then
currProjPath = preferences.GetProjectFilePath(currProjName)
End If
If currProjPath = "" Then
MsgBox "There is no current project file or path. ", , "SetProjectFilePath Example"
Else
MsgBox "The current project file path is: " & currProjPath, , "SetProjectFilePath Example"
' Set new project file information.
' Change drive/path as necessary to match your system
Dim newProjPath As String
newProjPath = "C:/AutoCAD/"
preferences.SetProjectFilePath currProjName, newProjPath
MsgBox "The new project file path is: " & newProjPath, , "GetProjectFilePath Example"
' Reset the project file information
preferences.SetProjectFilePath currProjName, currProjPath
MsgBox "The project file path has been reset to: " & currProjPath, , "GetProjectFilePath Example"
End If
End Sub
Visual LISP:
(vl-load-com)
(defun c:Example_SetProjectFilePath()
;; This example finds the current project file information, changes
;; that information, and finally resets the information back to the
;; original values.
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
(setq preferences (vla-get-Preferences acadObj))
;; Get the current project file information
(setq currProjName (vlax-variant-value (vla-GetVariable doc "PROJECTNAME")))
(if (/= currProjName "")
(setq currProjPath (vla-GetProjectFilePath (vla-get-Files preferences) currProjName))
(setq currProjPath "")
)
(if (= currProjPath "")
(alert "There is no current project file or path. ")
(progn
(alert (strcat "The current project file path is: " currProjPath))
;; Set new project file information.
;; Change drive/path as necessary to match your system
(setq newProjPath "C:/AutoCAD/")
(vla-SetProjectFilePath (vla-get-Files preferences) currProjName newProjPath)
(alert (strcat "The new project file path is: " newProjPath))
;; Reset the project file information
(vla-SetProjectFilePath (vla-get-Files preferences) currProjName currProjPath)
(alert (strcat "The project file path has been reset to: " currProjPath))
)
)
)