본문 바로가기

My178

[C] 디렉토리(폴더)의 모든 파일을 제거 디렉토리(폴더)내의 모든 파일을 제거, 삭제하는 함수 DeleteAllFile 입니다. 파일을 삭제하는 함수이므로 주의해서 사용하시기 바랍니다. 핵심 코드는 CFileFind, FindFile, DeleteFile 입니다. void DeleteAllFile( LPCSTR szDir ) { CString strName; strName.Format( "%s\\*.*", szDir ); CFileFind ff; BOOL bFind = ff.FindFile( strName ); while( bFind ) { bFind = ff.FindNextFile(); if( ff.IsDots() == TRUE || ff.IsDirectory() == TRUE ) continue; DeleteFile( ff.GetFilePa.. 2012. 12. 26.
[C] rand 함수를 이용하여 난수(랜덤) 발생시키기 0 ~ 999 사이의 난수 값을 받으려면 아래와 같이 코드를 작성한다. srand((unsigned)time(NULL)); int num = rand() % 1000; 랜덤 값을 받아야 하는 프로그램(로또 같은) 만들 때 사용하면 되겠다. 2012. 12. 26.
[MFC] 문자열 파싱하기 오늘은 문자열 파싱에 대해서 간단히 정리한다. 문자열 파싱이란 하나의 문자열에서 각각의 문자들을 분리하는 과정이라고 생각하면 된다. 이 과정을 통해 긴 문자열에서 원하는 문자만 뽑아 임의의 변수로 저장하여 사용할 수 있다. 방법 1. AfxExtractSubString() 함수 이용 AfxExtractSubString() 함수를 이용하여 간단하게 문자열을 분리할 수 있다. 다음 예제를 살펴보자 예제 1) CString str = "118.131.90.22"; //파싱할 문자열 CString strA, strB, strC, strD; //파싱되는 문자열을 담을 변수선언 AfxExtractSubString(strA, str, 0, '.'); // strA == "118" AfxExtractSubString(.. 2012. 12. 26.
[MFC] 리스트컨트롤(List Control) 클릭한 곳의 index값 얻어오기 리스트컨트롤 클래스에서 클릭 이벤트를 추가한다. 1. NM_CLICK 이벤트 추가 2. 해당 이벤트 함수내에 소스 추가 void CSlideFrame::OnNMClickList(NMHDR *pNMHDR, LRESULT *pResult) { // LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast(pNMHDR); NM_LISTVIEW* pNMView = (NM_LISTVIEW*)pNMHDR; int index = pNMView->iItem; *pResult = 0; } 2012. 12. 24.
[MFC] 다이얼로그에 다이얼로그 붙이기 1. 부모 다이얼로그 생성 2. 자식 다이얼로그 생성 - 자식 다이얼로그 속성창에서 style은 child, border는 NONE 으로 설정 변경 3. 부모 다이얼로그의 헤더파일에서 해당 자식 다이얼로그 변수 포인터로 생성 CChildDlg *m_pChildDlg; 4. 부모 다이얼로그의 OnInitDialog에서 m_pChildDlg = new CChildDlg; m_pChildDlg->Create( CChildDlg::IDD, this ); m_pChildDlg->ShowWindow( SW_SHOW ); m_pChildDlg->MoveWindow( rcDlg ); // 크기는 알아서 맞게 지정 이렇게 하면 자식 다이얼로그가 부모 다이얼로그에 붙는다. 2012. 12. 24.
[C] return 0, return 1, return -1 의미 프로그램 혹은 함수의 리턴값을 의미합니다. 보통 0 : 정상 종료 -1: 에러 발생 1이상 숫자 : 정상 종료 되었으나 다른 무엇인가 있음을 나타냄 -2 같은 숫자 : 에러 발생했으나 구체적으로 무엇이다를 나타냄 0과 -1의 경우 위의경우처럼 해석하고 1이상, -2 이상의 숫자의 경우는 구체적으로 무엇때문이다라는 것을 외부에 알려줄때 사용합니다. 이들 숫자로 미리 약속해 놓고 처리합니다. 2012. 12. 24.