전체 글319 CryptGetUserKey() 함수 이용시 에러 발생시 확인 방법 CryptGetUserKey() 함수를 이용해서 MS에서 제공하는 Key를 관리할 수 있다.이 때 잘 사용하다가 이유없이 에러가 발생하는 경우가 있다. 저장된 키에 문제가 발생했을 경우이다.https://msdn.microsoft.com/ko-kr/library/windows/desktop/bb204778(v=vs.85).aspx 위의 페이지에 MS에서 제공하는 Key Storage에 대한 정보를 확인할 수 있다. 이와 같은 문제가 발생하면 관련 Key가 저장된 폴더를 삭제하고 함수를 이용하면 문제가 해결이 된다. 일반적으로 RSA를 사용할 경우 아래 폴더를 삭제 한다. user/appdata/roaming/microsoft/crypto/rsa 2016. 9. 30. unicode CString to char* MFC에서는 CString을 많이 사용을 하는데 정말 지원하는 함수가 적다.char*로 변경할 때 아래와 같이 처리를 하면 된다. char buffer[1024] = {0};CString m_str = _T("TEST"); memset(buffer, 0, 1024);strcpy(buffer, CT2A(m_str) ); CT2A는 ATL and MFC String Conversion Macros로서 MFC에서 제공하는 매크로이다.아래 링크를 들어가면 자세한 설명이 있다. https://msdn.microsoft.com/en-us/library/87zae4a3.aspx 2016. 9. 20. MSVS 팀프로젝트 소스 다운로드 방법 MSVS Team Project를 처음 사용해서 너무 혼란스럽다.Git도 별로던데 SVN만 사용해서 그런지 다른 것은 너무 불편하다. SVN과 달리 checkout은 소스를 받아오는 기능이 아니다. 서버에서 소스를 받기 위해서는 "솔루션"을 선택하고 오른쪽 마우스를 클릭해서 "소스제어"를 선택한다."소스제어" - "특정 버전 가져오기" 메뉴를 선택하면 소스를 받아 올 수 있다. 위와 같이 진행을 한 후에 "특정 버전 가져오기"를 선택한다. 위와 같이 "최신 버전"을 선택하고아래 체크 박스에서 필요한 것을 선택한 후 "가져오기" 버튼을 누른다. 이렇게 해서 소스를 서버로부터 다운 받을 수 있다. 잊어버릴 것 같아 기록한다. 2016. 9. 20. Windows 7 에서 프로그램 아이콘이 표시되지 않는 문제 해결 방법 Windows 7 에서 프로그램 아이콘이 표시되지 않는 문제 해결 방법 윈도우 버그로 업로드된 bat 파일을 다운 받아 "관리자 권한으로 실행"하면 아이콘이 정상적으로 표시가 됩니다. bat 파일은 메모장으로 아래와 같이 만들어 저장하면 됩니다. @echo offtaskkill /f /im explorer.exeattrib "%userprofile%\appdata\local\iconcache.db" -s -r -hdel /q "%userprofile%\appdata\local\iconcache.db"start explorer.exeexit 2016. 8. 24. 특정 폴더 파일, 하위 폴더를 삭제하는 함수 특정 폴더 파일, 하위 폴더를 삭제하는 함수 구현 void etDataBase::RemoveDir(CString strDir, BOOL bOnlyFile/* = false*/) { CFileFind finder; BOOL bWorking = TRUE; CString strDirFile = strDir + CString("\\*.*"); bWorking = finder.FindFile(strDirFile); while(bWorking) { bWorking = finder.FindNextFile(); if(finder.IsDots()) continue; if(finder.IsDirectory() && !bOnlyFile) RemoveDir(finder.GetFilePath()); else ::DeleteFi.. 2016. 6. 1. std::string Split http://stackoverflow.com/questions/5167625/splitting-a-c-stdstring-using-tokens-e-g?answertab=votes#tab-top std::string을 split 하는 방법을 찾다가 이 방법이 가장 좋은 것 같아 글을 남긴다. 추후에도 많이 사용할 것 같다. #include #include #include using namespace std; int main() { vector strings; istringstream f("denmark;sweden;india;us"); string s; while (getline(f, s, ';')) { cout 2016. 4. 26. 바이트 순서 변환 함수 https://msdn.microsoft.com/ko-kr/library/cc468322(v=vs.71).aspx Windows 소켓 바이트 순서 변환 함수함수용도ntohs16비트 수량을 네트워크 바이트 순서에서 호스트 바이트 순서로(big-Endian에서 little-Endian으로) 변환합니다.ntohl32비트 수량을 네트워크 바이트 순서에서 호스트 바이트 순서로(big-Endian에서 little-Endian으로) 변환합니다.htons16비트 수량을 호스트 바이트 순서에서 네트워크 바이트 순서로(little-Endian에서 big-Endian으로) 변환합니다.htonl32비트 수량을 호스트 바이트 순서에서 네트워크 바이트 순서로(little-Endian에서 big-Endian으로) 변환합니다.또한 .. 2016. 3. 16. Error C2039: 'Enable3dControls' : is not a member of 'CWinApp' Visual Studio 2005를 사용하고 있는데 Debug 모드에서는 정상적으로 빌드가 되는데Release 모드로 하면 빌드 에러가 발생하는 문제입니다.에러 메시지는 아래와 같습니다.Error C2039: 'Enable3dControls' : is not a member of 'CWinApp'구글로 검색을 해 본 결과 아래와 bug라고 합니다.MSDN Managed Newsgroups에서 관련 내용은 bug이기 때문에 삭제를 하면 된다고 합니다. Yes, this is due to a bug. You should be able to comment out the Enable3dControl text lines in afxwin2.inl to get rid of the problem. They are n.. 2016. 3. 10. MSXML2에서 indentation 처리 방법 https://msdn.microsoft.com/ko-kr/library/ms757021(v=vs.85).aspx 정말 당황스럽다. 어떻게 하는지 정말 알수가 없어서 찾아보니까 이런 예제가 있다. 다른 방법이 있는지 모르겠다. 우선 아래 방법으로 임시 처리를 한다.// Create an element to hold three empty subelements. pe = pXMLDom->createElement(L"node3");// Add newline +tab for indentation. pRoot->appendChild(pXMLDom->createTextNode(L"\n\t")); 직접 \n\t을 넣어 맞춰야 한다. 이런 방법밖에 없나? 2016. 3. 7. 이전 1 ··· 12 13 14 15 16 17 18 ··· 36 다음