본문 바로가기
  • You find inspiration to create your own path !
업무 자동화/VBA, VB.NET For Creo

초보자를 위해 . . . . IpfcBaseSession 환경설정 기능

by ToolBOX01 2026. 5. 4.
반응형

Creo의 환경설정(config.pro)을 프로그램에서 읽고 쓰는 기능입니다. 수동으로 Creo 설정 파일을 열지 않고도 코드로 옵션을 제어할 수 있습니다.

 


1. GetConfigOption() — 옵션 값 읽기

현재 Creo 세션에 설정된 옵션 값을 가져옵니다.

Sub GetConfigExample()

    Dim asynconn As New pfcls.CCpfcAsyncConnection
    Dim conn     As pfcls.IpfcAsyncConnection
    Dim oSession As pfcls.IpfcBaseSession
    Dim sValue   As String

    Set conn     = asynconn.Connect("", "", ".", 5)
    Set oSession = conn.Session

    On Error GoTo ErrHandler

    '// 옵션 이름으로 현재 값 읽기
    sValue = oSession.GetConfigOption("save_objects")
    MsgBox "save_objects = " & sValue

    sValue = oSession.GetConfigOption("trail_dir")
    MsgBox "trail_dir = " & sValue

    sValue = oSession.GetConfigOption("pro_unit_length")
    MsgBox "단위(길이) = " & sValue

    On Error GoTo 0
    conn.Disconnect (2)
    Exit Sub

ErrHandler:
    MsgBox "옵션 없음 또는 오류: " & Err.Description
    On Error GoTo 0
    conn.Disconnect (2)

End Sub

 

2. SetConfigOption() — 옵션 값 쓰기

세션 재시작 없이 즉시 적용됩니다.

Sub SetConfigExample()

    Dim asynconn As New pfcls.CCpfcAsyncConnection
    Dim conn     As pfcls.IpfcAsyncConnection
    Dim oSession As pfcls.IpfcBaseSession

    Set conn     = asynconn.Connect("", "", ".", 5)
    Set oSession = conn.Session

    On Error GoTo ErrHandler

    '// 저장 방식 변경
    oSession.SetConfigOption "save_objects", "changed_and_specified"

    '// 작업 디렉토리 변경
    oSession.SetConfigOption "search_path", "C:\creo_work\parts"

    '// 단위 설정
    oSession.SetConfigOption "pro_unit_length", "unit_mm"

    MsgBox "환경설정 변경 완료"

    On Error GoTo 0
    conn.Disconnect (2)
    Exit Sub

ErrHandler:
    MsgBox "설정 오류: " & Err.Description
    On Error GoTo 0
    conn.Disconnect (2)

End Sub

3. LoadConfigFile() — config.pro 파일 통째로 로드

여러 옵션이 담긴 설정 파일을 한 번에 적용할 때 사용합니다.

Sub LoadConfigExample()

    Dim asynconn As New pfcls.CCpfcAsyncConnection
    Dim conn     As pfcls.IpfcAsyncConnection
    Dim oSession As pfcls.IpfcBaseSession

    Set conn     = asynconn.Connect("", "", ".", 5)
    Set oSession = conn.Session

    On Error GoTo ErrHandler

    '// config.pro 파일 경로 지정 후 일괄 로드
    oSession.LoadConfigFile "C:\creo_config\config.pro"

    MsgBox "config.pro 로드 완료"

    On Error GoTo 0
    conn.Disconnect (2)
    Exit Sub

ErrHandler:
    MsgBox "파일 로드 오류: " & Err.Description
    On Error GoTo 0
    conn.Disconnect (2)

End Sub

 

by korealionkk@gmail.com

 

 

 

 

 

 

 

반응형