C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[3317] Re:[질문]TFileListBox에 관하여...
박지훈.임프 [cbuilder] 3729 읽음    2000-04-12 00:00
전종욱 님이 쓰신 글 :
: 안녕하세요.
:
: TFileListBox의 메서드 중 ApplyFilePath라는 것이 있습니다.
:
: 그런데 여기에 물결표시(~)가 포함된 파일 이름을 넣어주면 오류가 납니다.
:
: 이를테면 "C:\\Program Files\\MyProgram\\Project.exe"와 동일한 파일인
:
: "C:\\PROGRA~1\\MYPROG~1\\Project.exe" 말이죠..
:
: 위에 것은 잘 들어가는데 아랫 것이 문제입니다.
:
: 해결할 방안이 없을까요?
:
: 제가 아직 컴퍼넌트 사용하는데 많이 미숙한지라... ^^
:
: 수고하세요.
:


임펠리테리입니다.

간단히 말하면, C:\\PROGRA~1\\MYPROG~1\\Project.exe 와 같은 패스는 사용하시지 않는 것이 좋습니다. 이런 패스 표기법이 표준이 아니므로 VCL의 곳곳에 이와 같은 방법으로 표시했을 때 문제가 생기는 부분이 있습니다.

사실 fat가 FAT16 이라면(다시 말해 win95 환경이라면) 디스크에 실제로 저장되는 패스는 위와 같이 ~ 표시가 나타날 수 있습니다. 이와 같은 디렉토리명을 8.3 포맷이라고 하는데, 이 8.3 포맷과 표준인 긴 패스네임과 서로 변환할 수 있는 함수가 Win32 API에 있습니다.
GetShortPathName(), GetFullPathName()
말씀하신 것과 같은 문제에서는 이들 함수를 써서 표준 패스문자열을 얻어서 처리하면 되겠지요?

그럼 참고하시길...

+ -

관련 글 리스트
3309 [질문]TFileListBox에 관하여... 전종욱 3544 2000/04/10
3317     Re:[질문]TFileListBox에 관하여... 박지훈.임프 3729 2000/04/12
3319         아! 제가 질문을 잘못드렸군요.. 다시 질문.. 전종욱 3496 2000/04/12
3344             Re:아! 제가 질문을 잘못드렸군요.. 다시 질문.. 박지훈.임프 3840 2000/04/17
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.