오오 멋지당
소스는 아래와 같음. Windows의 Temp 디렉토리를 가져와서 prefixstring을 붙인 새 tmp파일의 주소값을 리턴한다. CString CClassName::GetTempFilePath(LPCTSTR pszPrefixString) { CString strPath; if(GetTempPath(_MAX_PATH,strPath.GetBuffer(_MAX_PATH+1)) != 0) { strPath.ReleaseBuffer(); CString strTempFile; if(GetTempFileName( strPath, pszPrefixString, 0, strTempFile.GetBuffer(_MAX_PATH+1) ) != 0) { strTempFile.ReleaseBuffer(); return str..
아래 내용이 일부 틀려서 정정합니다. 20110719. 아래 처럼 할 경우 폰트가 변경 되는 것이 맞긴 한데, '일본어'등의 특수 문자들을 불러서 Insert하는 경우에 문제가 생긴다. 일본어를 지원하지 않는 폰트가 set돼있는 트리컨트롤에 일본어 String을 insert하려하면 항목이 깨져버린다. 그 이후에 font를 바꿔봤자 이미 삽입된 항목은 깨진 뒤다. 아래서 적은 NMCustomDraw는 삽입 된 뒤에 그려지는 듯 하다. 따라서 font를 적용시킬려면 그냥 CTreeCtrl로 객체를 생성하자마자 SetFont로 폰트를 지정하면 되는 듯 하다. 만약 CTreeCtrl을 상속받은 CustomTreeControl이라면 PreSubclassWindow 메소드에서 SetFont해주도록 하자. -----..
프로그램의 솔루션 디렉토리를 선택 하면 해당 프로그램에 들어간 소스의 라인 수를 계산하여 출력해 주는 프로그램. 현재 c, cpp, h, java, cs, py 확장자만 지원한다. 소스는 너무 간단해서.. 걍 대충 주석써서 올리겠음. void CCodeLineSearcherDlg::FindLine( int &nTotalLine, CString strPath ) { CFileFind finder; finder.FindFile( strPath ); int res = 1; while( res ) { res = finder.FindNextFile(); if( ( m_bC && finder.GetFileName().Right(2) == _T(".c") ) || ( m_bCPP && finder.GetFileNam..
C, C++ 에서는 프로그램 실행시 명령 인자를 받을 때 argv를 통해서 쉽게 받아 올 수 있다. MFC에서는 어떻게 얻어올까? GetCommandLine(); 을 쓰면 얻어 올 수 있다. 백문이 불여일견. 한번 테스트 직접 해보시길. 그리고 아래는 인자를 쫙 얻어오는 예제 소스. 띄어쓰기(공백)이 제대로 분리 됐는지 확인 하기 위해 출력 시에 @를 시작과 끝에 붙여서 출력 시켰다. 파싱은 알아서 하면 됨. LPSTR pszArgv = GetCommandLine(); CString strArgv = pszArgv; int nFirstSpace = strArgv.Find( _T(" ") ); CString strFirstArgv = strArgv.Mid( nFirstSpace + 2 ); AfxMessa..
Registry read, write. 레지스트리를 입력하거나 읽을려면 RegSetValueEX, RegQueryValueEx등을 써야하는데 들어가는 인자 셋팅하는게 귀찮다. 따라서 다음과 같이 쉽게 쓰도록 만들어주면 좋다. 우선 쓰기. //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /// Registry에서 string value 쓰는 함수. /// ///@param[in]hKey쓸 값이 존재하는 키, { HKEY_LOCAL_MACHINE, HKEY_CLASSES_ROOT, ...} 등의 값 사용. ///@param[in..
인터넷 연결 상태를 확인하는 소스 코드. //인터넷에 연결돼 있나 확인 ConnectivityManager connect = (ConnectivityManager)getSystemService(CONNECTIVITY_SERVICE); if ( connect.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState() == NetworkInfo.State.CONNECTED || connect.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState() == NetworkInfo.State.CONNECTED ) { //연결 돼있는 경우 //... } else { //연결 돼있지 않은 경우 //... } 소스는 위와 같으며 ..
- Total
- Today
- Yesterday
- it
- Python
- AWS
- android
- 음악
- linux
- db
- winapi
- C
- 드라이버
- Quiz
- Troubleshooting
- source
- jni
- kering
- 프로그래밍
- C++
- Cloud
- jni강좌
- 리눅스
- Visual C++
- algorithm
- database
- java
- API
- MFC
- driver
- 안드로이드
- gcc
- NDK
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |