[WinAPI] 로컬 디스크 – 2. 로컬 디스크 용량 얻기(GetDiskFreeSpaceEx)

저번글에 이어서 이번 글에서는 로컬 디스크의 용량을 얻어오는 작업을 해보겠습니다. 디스크에는 전체 용량, 현재 용량, 사용 용량 등의 정보가 있습니다. 이러한 정보들은 GetDiskFreeSpace 함수를 써서 확인을 할 수 있습니다.GetDiskFreeSpaceEx 함수 사용을 위해 필요한 요구사항은 아래와 같습니다. 지원되는 최소 클라이언트 Windows XP 지원되는 최소 서버 Windows Server 2003 헤더 fileapi.h (Windows.h) 라이브러리 Kernel32.lib DLL Kernel32.dll GetDiskFreeSpaceEx 함수 원형은 … Read more

[WinAPI] 로컬 디스크 – 1. 로컬 디스크 목록 얻기(GetLogicalDriveStrings)

로컬 디스크 관련하여, 이번 글에서는 로컬 디스크 목록 얻는 방법에 대해 알아보겠습니다. 로컬 디스크는 내PC 폴더에서 볼 수 있으며 아래와 같이 C:\, D:\ 경로를 가집니다. USB를 꽂거나 하드를 계속 확장하게 되면 E:\, F:\, … 로 계속 늘어 나게 됩니다.이 목록을 GetLogicalDriveStrings함수를 사용하여 얻어보겠습니다. 함수 원형은 아래와 같습니다. 함수가 실패하면 0을 반환하고 GetLastError를 통해 확인 가능합니다.함수가 성공하면 … Read more

[Visual Studio 2019] 빌드 이벤트 사용하기

Visual Studio 2019 에서 빌드 이벤트에 대해 알아보겠습니다. 빌드 이벤트는 개발할 때 보단 배포, 혹은 유지보수 할 때 용이한 기능입니다.문자 그대로 빌드에 대한 이벤트이고, 프로젝트를 우클릭 하여 속성(Alt + Enter)에서 구성 속성 -> 빌드 이벤트에서 설정 할 수 있습니다. 빌드 전, 링크 전, 빌드 후 이벤트 중에서 빌드 후 이벤트를 많이 사용하니, 빌드 후 이벤트에서 명령줄을 입력해보겠습니다.우선 자주쓰는 … Read more

[WinAPI] GetFileVersionInfo 파일 버전 확인

일반적으로 EXE 실행 프로그램에는 파일 버전이 있습니다.프로그램 개발자들은 파일 버전으로 유지보수를 하거나, 업데이트 작업을 할 수 있습니다. 우선 간단하게 파일 버전을 확인하는 방법을 알아보겠습니다보통 C:\Program Files (x86)\Kakao\KakaoTalk 경로에 카카오톡 실행 파일이 있습니다. 해당 파일을 우클릭하여 속성 -> 자세히를 보시면 파일 버전이 적혀있습니다. 이제 코드를 작성하여 파일 버전을 읽어봅시다.필요 헤더 파일은 아래와 같습니다. 함수 원형은 아래와 같습니다. lpData를 … Read more

[WinAPI] TTS(Text To Speech) 만들어보기 – ISpVoice

Windows에서는 문자를 음성으로 출력할 수 있는 TTS(Text To Speech) 기능을 제공합니다.당연히 다른 상용화된 TTS 제품들과 비교하면 매우 낮은 수준이지만, 간단하게 코딩해서 사용할 수 있다는 것에 의미만 두면 되겠습니다.한글 TTS는 Windows 8 이후부터 지원합니다. 필요 헤더 파일은 아래와 같습니다. Visual C++에서 TTS는 COM을 사용하여 간단하게 만들 수 있습니다.COM을 사용하고, 이후 사용하지 않을 때엔 초기화와 해제를 해줘야합니다. … Read more

[WinAPI] FTP 클라이언트 프로그램 만들기(CFtpConnection) – 3

FTP 관련 마지막으로 CFtpConnection를 사용하여 FTP 클라이언트 프로그램을 만들어 보겠습니다. WinAPI에서는 CInternetSession과 CFtpConnection으로 FTP 프로그램을 정말 쉽게 만들 수 있습니다.CFtpConnection의 멤버 함수 설명은 아래와 같습니다. 멤버 함수 설명 Command FTP 서버에 직접 명령을 보냄 SetCurrentDirectory 현재 FTP 디렉터리 설정 GetCurrentDirectory 현재 디렉터리를 가져옴 GetCurrentDirectoryAsURL 현재 디렉터리를 가져옴(URL) CreateDirectory 서버에 디렉터리를 만듦 RemoveDirectory 지정 된 디렉터리를 서버에서 제거 … Read more

[WinAPI] Windows FTP IIS 설정하기 – 2

이번 글에서는 윈도우에서 IIS를 통해 FTP를 구축해보겠습니다. 제어판 – 프로그램 – 프로그램 제거를 클릭합니다. 그 다음 좌측 메뉴 중 Windows 기능 켜기/끄기를 클릭합니다. 그러면 아래와 같은 Windows 기능 켜기끄기 화면이 나오는데, 목록 중 인터넷 정보 서비스 – FTP 서버를 아래와 같이 선택합니다. 그리고 FTP 서버로 쓸 폴더를 하나 생성해줍니다. 저는 C:\에 FTP폴더를 하나 생성하였습니다.(C:\FTP)윈도우 키를 눌러 시작 … Read more