반응형
◎ Sub AuthenticateBrowser
Creo Parametric의 VB API에서 제공하는 메서드로, IpfcBaseSession 객체의 일부입니다.
이 메서드는 HTTP 서버(예: Windchill 서버)에 대한 자동 로그인을 위한 사용자 이름과 비밀번호를 미리 설정합니다.
인증이 필요한 서버에 접근할 때 인증 대화상자 없이 자동으로 인증을 처리할 수 있도록 합니다.
※ 매개변수:
- Username: 사용할 사용자 이름 (문자열 타입).
- Password: 해당 사용자의 비밀번호 (문자열 타입).
Sample Code
Dim baseSession As IpfcBaseSession
Dim username As String
Dim password As String
'// 사용자 이름과 비밀번호 설정 //'
username = "your_username" '// 실제 사용자 이름으로 변경 //'
password = "your_password" '// 실제 비밀번호로 변경//'
' // 브라우저 인증 설정 // '
Call baseSession.AuthenticateBrowser(username, password)
◎ Sub ChangeDirectory(Path As String)
현재 작업 디렉토리(Working Directory)를 지정된 경로로 변경합니다.
- 기능: Creo 세션에서 파일 열기/저장 시 기본으로 사용되는 디렉토리를 변경합니다.
- 매개변수: Path: 변경할 새 작업 디렉토리의 절대 경로 또는 상대 경로 (문자열).
※ 참고:
이 메서드는 Creo가 실행 중인 상태에서 호출되어야 하며, 경로가 존재하고 접근 가능해야 성공합니다.
Windchill과 연결된 경우에도 로컬 작업 디렉토리 변경에 사용됩니다.
Sample Code
Dim baseSession As IpfcBaseSession
Dim newPath As String
'// 새 작업 디렉토리 경로 설정 (절대 경로 예시) //'
newPath = "C:\Creo_Workspace\MyProject"
'// 작업 디렉토리 변경 //'
Call baseSession.ChangeDirectory(newPath)
※ 예외처리 :
Creo Parametric의 VB API에서 ChangeDirectory 메서드를 호출할 때 실패할 수 있는 상황을 나타내는 오류 코드입니다.
즉, "이런 문제가 생기면 프로그램이 멈추거나 오류를 반환한다" 는 의미입니다
- IpfcXToolkitCantAccess = "그 폴더에 접근할 수 없어요" (CantAccess)
- IpfcXToolkitInvalidName = "그 이름은 쓸 수 없어요" (InvalidName)
오류가 발생 하는 원인들
1. Call baseSession.ChangeDirectory("Z:\공유폴더\프로젝트") ' 네트워크 드라이브 연결 안 됨 → CantAccess
2. Call baseSession.ChangeDirectory("C:\My<Bad>Folder") ' < 기호 포함 → InvalidName
3. Call baseSession.ChangeDirectory("C:\존재하지않는폴더") ' 폴더 없음 → CantAccess
예외 처리의 중요한가?
이 예외들을 잡지 않으면 (On Error GoTo 없이 사용) → VBA 프로그램이 강제 종료됩니다.
따라서 안정적인 자동화 프로그램을 만들려면 반드시 예외 처리(Error Handling)를 해야 합니다.
Sample Code
On Error GoTo ErrorHandler
Call baseSession.ChangeDirectory("C:\MyProject")
MsgBox "작업 디렉토리 변경 성공!"
Exit Sub
ErrorHandler:
If Err.Number = IpfcXToolkitCantAccess Then
MsgBox "오류: 디렉토리에 접근할 수 없습니다. 경로를 확인하세요.", vbCritical
ElseIf Err.Number = IpfcXToolkitInvalidName Then
MsgBox "오류: 잘못된 경로 이름입니다. 특수문자나 예약어를 피하세요.", vbCritical
Else
MsgBox "알 수 없는 오류: " & Err.Description, vbCritical
End If
by korealionkk@gmail.com

반응형
'업무 자동화 > VBA, VB.NET For Creo' 카테고리의 다른 글
| IpfcBaseSession : Method (Sub CopyFileToWS) (0) | 2025.11.01 |
|---|---|
| IpfcBaseSession : Method (Sub CopyFileFromWS) (0) | 2025.10.31 |
| IpfcBaseSession : Method (0) | 2025.10.29 |
| IpfcBaseSession (0) | 2025.10.28 |
| Excel VBA Study] Assembly #1 (2) | 2025.07.23 |