Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

승쨩개발공부

[MFC] PathFinder 1 본문

MFC

[MFC] PathFinder 1

Unknowns 2022. 5. 13. 18:58

자 이제 리스트박스 에 드레그&드랍을 하면

경로, ObjKey값, StateKey값, 파일이름, 이미지갯수 를 메모장에 저장을해서 불러오는형식으로 텍스쳐를 추가해보자.

 

 

일단 Header에 fstream을 추가시켜준다

 

 

우선 Tool 솔루션에 MFC클래스를 생성해준다.

Load,Save 버튼 등이 필요하니 기본클래스는 Dialog로 해준다.

 

클래스 생성후 리소스뷰로와서

리스트박스, 저장,불러오기 버튼을 만들어준다

리스트 박스는 드래그&드랍이 필요하니 Accept Files를 True 해준다.

 

그리고 버튼,리스트박스 이벤트처리기와 DropFIle메세지를 클래스에 추가시켜준다.

 

이제 함수들의 값을 채워주기위해

 

새로 다른 FileInfo라는 클래스를 C++ 클래스로 만들어준다.

 

ConvertRelativePath : 절대경로를 상대경로로 변환하는 함수.

DirFileCount : 디렉토리 폴더 안에 몇장의 이미지가있는지 구해주는 함수.

DirInfoExtraction : 폴더 안에 정보를 추출해주는 함수.

 

상대 경로를 저장할 문자열과, 현재 디렉토리가 있는 절대 경로를 저장할 문자열을 배열로 잡고

문자열 초기화를 해준다.

 

GetCurrentDircectory로 작업경로를 절대경로로 넣어주고, MAX_PATH크기만큼 잡아준다.

 

PathRelativePathTo로 szCurDirPath(절대경로에서) strFullPath까지 가는 상대경로를 구해서

szCurDirPath에 저장해준다.  단, 같은 드라이브에서만 경로 변경이 가능하다.

(C드라이브 -> D드라이브 X)

 

그리고 상대경로를 저장할 문자열을 return 시켜준다.

 

 

경로안에 모든 파일갯수를 찾기위해 wstrFilePath 에 인자값으로받을 경로와 //*.* 을 더해준다

 

파일을 찾기위해 CFileFind를 지역변수로 만든다.

 

파일이 존재하면 True, 없다면 false를 변환하게 Bool 타입으로 저장한다

 

파일이 존재한다면 FindNextFIle은 1을반환하게되어 파일이 존재하지 않을떄까지 반복문을 수행하게된다.

 

Dot : . 이나 ..이 파일명이면 건너뛴다.

System : 시스템 파일이면 건너뛴다.

 

그리고 FileCount를 파일끝까지 찾을떄까지 증가시킨다.

 

 

 

 

 

 

'MFC' 카테고리의 다른 글

[MFC] PathFinder 2  (0) 2022.05.13
[MFC] 맵툴  (0) 2022.05.10
[MFC] 유닛툴3  (0) 2022.05.10
[MFC] 유닛툴2  (0) 2022.05.10
[MFC] 유닛툴1  (0) 2022.05.10