728x90

Application/MFC 51

[MFC] 코드에서 Menu caption(string, text) 변경

MFC 코드상에서 Caption을 변경하려면 아래와 같은 코드를 작성하면 됩니다 // 첫번째 메뉴AfxGetMainWnd()->GetMenu()->ModifyMenu(0, MF_STRING | MF_BYPOSITION, 0, _T("첫번째 메뉴"));// 첫번째 메뉴의 하위 메뉴// ID의 경우 메뉴 리소스의 메뉴 ID를 참조AfxGetMainWnd()->GetMenu()->GetSubMenu(0)->ModifyMenu(0, MF_STRING | MF_BYPOSITION, ID_30001, _T("첫번째 메뉴 하위 첫번째 메뉴"));AfxGetMainWnd()->GetMenu()->GetSubMenu(0)->ModifyMenu(1, MF_STRING | MF_BYPOSITION, ID_30002, _T..

Application/MFC 2025.02.07

[MFC] 파일 생성 (CreateFile)

CreateFile을 이용한 간단한 파일 생성 후 읽고 쓰기 예제입니다  HANDLE hFile = CreateFile(_T("C:\\TestFile.txt"), GENERIC_READ | GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0);if(hFile == INVALID_HANDLE_VALUE){ return FALSE;}DWORD dwWrite;DWORD dwRead;WCHAR szData[1024];wsprintf(szData, _T("테스트"));if(WriteFile(hFile, szData, (DWORD)strlen(szData), &dwWrite, 0) == FALSE){ //쓰기 실패 CloseHandle(hFile); h..

Application/MFC 2024.11.24

[MFC] 스피커 설정 (Mute, Volume Up / Down)

스피커의 음소거 및 볼륨 설정 방법입니다 WM_APPCOMMAND  메시지로 설정 가능하며 아래와 같은 코드로 작성하시면 됩니다 // 음소거 설정SendMessage(m_hWnd, WM_APPCOMMAND, NULL, MAKELONG(0, APPCOMMAND_VOLUME_MUTE));// 볼륨 다운SendMessage(m_hWnd, WM_APPCOMMAND, NULL, MAKELONG(0, APPCOMMAND_VOLUME_DOWN));// 볼륨 업SendMessage(m_hWnd, WM_APPCOMMAND, NULL, MAKELONG(0, APPCOMMAND_VOLUME_UP));  제 글이 도움이 되셨다면 댓글 & 공감 부탁드려요 😀

Application/MFC 2024.11.21

[MFC] 다중 NIC 중 특정 NIC로 Socket Connect

현재 PC에 다중의 NIC가 꼽혀 있는 환경에서 특정 NIC로 Socket Connect를 하고 싶다면 Socket Connect 이전에 Bind로 Socket을 설정하면 됩니다 간단한 예시입니다 SOCKET SocketConnect(){ SOCKET sockRet = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); if(sockRet == INVALID_SOCKET) { return INVALID_SOCKET; } SOCKADDR_IN saBind; memset(&saBind, 0, sizeof(saBind)); saBind.sin_family = AF_INET; saBind.sin_addr.s_addr = {특정 NIC IP}; saBind.sin_port =..

Application/MFC 2024.11.18

[MFC] 통신 프로그램 기초 (Socket 함수 사용)

Socket 프로그램을 사용하기 위해 제일 처음 작성해야 할 구문입니다 해당 구문을 작성하지 않았을 경우에는 Socket 함수 사용이 되지 않습니다 프로그램 제일 처음 부분에 사용해야할 구문입니다 WSADATA wsaData;WSAStartup(MAKEWORD(2, 2), &wsaData);​ WSAStartup 함수는 애플리케이션 또는 DLL에서 호출하는 첫 번째 Windows 소켓 함수여야 합니다 애플리케이션 또는 DLL에서 필요한 Windows 소켓 버전을 지정하고 특정 Windows 소켓 구현의 세부 정보를 검색할 수 있습니다 애플리케이션 또는 DLL은 WSAStartup을 성공적으로 호출한 후에만 추가 Windows 소켓 함수를 실행할 수 있습니다 https://learn.microsoft.co..

Application/MFC 2024.11.16

[MFC] File Read / Write Overlapped 사용법

파일 읽고 / 쓸때 Overlapped 사용 방법에 대한 자료 입니다  1. 파일 읽기 BOOL DataFileRead(CString strPath, LARGE_INTEGER liPos, DWORD &rdwRet, BYTE *pData){ BOOL bRet = FALSE; OVERLAPPED OverlapRead; memset(&OverlapRead, NULL, sizeof(OverlapRead)); HANDLE hFile = CreateFile(strPath, GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED, NULL); if(hFile == INVALID_HANDLE_VALUE) { // 파일 열기..

Application/MFC 2024.08.08

[MFC] 중복 실행 방지 (HANDLE, Event)

MFC에서 프로그램 중복 실행을 방지하기 위한 간단한 코드를 알려 드리겠습니다 Header File class MyClass{public: MyClass(); ~MyClass(); private: HANDLE m_hEvent; BOOL IsTaskCheck();};  우선 헤더 파일에 HANDLE 변수를 선언해 줍니다 Cpp MyClass::MyClass(){ m_hEvent = NULL;}MyClass::~MyClass(){ if(m_hEvent != NULL) { CloseHandle(m_hEvent); m_hEvent = NULL; }}MyClass::IsTaskCheck(){ m_hEvent = OpenEven..

Application/MFC 2024.04.09

[MFC] Button Text Multiline (버튼 글자 줄 바꿈)

MFC 버튼의 Caption에서 줄 바꿈을 하고 싶다면 아래와 같이 스타일 설정을 변경 후 바꾸려는 글자로 지정하면 됩니다 LONG lStyle = ::GetWindowLong(GetDlgItem(IDC_BUTTON1)->GetSafeHwnd(), GWL_STYLE); ::SetWindowLong(GetDlgItem(IDC_BUTTON1)->GetSafeHwnd(), GWL_STYLE, lStyle | BS_MULTILINE); GetDlgItem(IDC_BUTTON1)->SetWindowText(_T("줄\n바꿈")); 설정을 완료하면 아래와 같이 줄이 바뀌는 것을 확인할 수 있습니다 제 글이 도움이 되셨다면 댓글 & 공감 부탁드려요 😀

Application/MFC 2024.01.29
728x90
반응형