Universidad de Magallanes

Investigación


Dirección de Investigación


facebook twitter youtube
02 de agosto del 2019

winapi 예제

윈도우 API는 마이크로 소프트 윈도우 운영 체제에서 사용할 수있는 응용 프로그램 프로그래밍 인터페이스 (API)의 마이크로 소프트의 핵심 세트입니다. 그것은 이전에 Winapi 또는 Win32 API라고했다. 예를 들어, 현재 테마 색상을 사용하지 않은 여러 가지 색상의 창을 마지막으로 보았을 때를 다시 생각해 보도록 싶습니다. 대부분의 경우 당신은 거의 하나를 본 적이 없다; 그 이유는 창이나 컨트롤의 색상을 설정하는 간단한 함수가 없기 때문입니다. 이는 모든 응용 프로그램이 표준 모양을 준수하도록 Microsoft의 노골적인 시도입니다. 창과 컨트롤의 색상을 설정하는 쉬운 방법을 제공하지 못하면 마이크로 소프트는 몇 무정부 찾고 응용 프로그램이 생성될 것이라고 다소 확신 할 수 있습니다. 이러한 제한 사항과 다른 많은 한계를 극복하기 위해 Win32 API를 심층으로 알아야 합니다. 그런 다음 자습서의 후반부에서 다루는 소유자가 그린 컨트롤 및 개체 지향 프로그래밍을 사용하여 창을 디자인하고 관리하는 더 나은 방법을 만들 수 있습니다. 예를 들어, 초보 C 프로그래머는 종종 간단한 “hello world”를 첫 번째 과제로 작성합니다. 프로그램의 작업 부분은 주 서브루틴 내의 단일 printf 라인일 뿐입니다.

표준 I/O 라이브러리에 연결하는 오버헤드도 한 줄에 불과합니다. 예를 들어 단추 그룹에서 각 단추는 사용자가 단추를 클릭할 때 비슷한 동작이 있습니다. 물론 버튼이 완전히 동일하지는 않습니다. 각 단추는 자체 텍스트 문자열을 표시하고 자체 화면 좌표를 가집니다. 각 창에 대해 고유한 데이터를 인스턴스 데이터라고 합니다. Windows API인 비공식적으로 WinAPI는 Microsoft Windows 운영 체제에서 사용할 수 있는 API(응용 프로그램 프로그래밍 인터페이스)의 핵심 집합입니다. Windows API라는 이름은 자신의 이름(예: Win32 API)으로 참조되는 여러 가지 플랫폼 구현을 의미합니다. 버전 섹션을 참조하십시오. 거의 모든 Windows 프로그램이 Windows API와 상호 작용합니다. Windows NT 운영 체제 라인에서는 소수의 프로그램(예: Windows 시작 프로세스 초기에 시작)이 네이티브 API를 사용합니다. [1] 각 메시지에 대해 창 프로시저가 호출되고 HWND 매개 변수는 창의 핸들이며 메시지가 적용되는 것입니다.

이는 동일한 클래스의 두 개 이상의 창이 있고 동일한 창 프로시저(WndProc))를 사용하기 때문에 중요합니다. 차이점은 hwnd 매개 변수가 어떤 창인지에 따라 다르다는 것입니다. 예를 들어 WM_CLOSE 메시지가 있으면 창이 파기됩니다. 첫 번째 매개 변수로 받은 창 핸들을 사용하기 때문에 다른 창은 영향을 받지 않으며 메시지의 의도된 창만 영향을 받습니다. WNDCLASS 구조에는 여기에 표시되지 않은 다른 멤버가 있습니다. 이 예제와 같이 0으로 설정하거나 채울 수 있습니다. MSDN 설명서에서는 구조를 자세히 설명합니다. 클래스 이름은 현재 프로세스에 로컬이므로 프로세스 내에서 만 고유해야 합니다. 그러나 표준 Windows 컨트롤에는 클래스도 있습니다. 이러한 컨트롤을 사용하는 경우 컨트롤 클래스 이름과 충돌하지 않는 클래스 이름을 선택해야 합니다.

예를 들어 단추 컨트롤의 창 클래스이름은 “Button”입니다. 이 자습서와 함께 사용되는 모든 예제 프로그램은 두 번째 자습서에서 다루는 무료 Dev-C++ 컴파일러를 사용하여 컴파일되었습니다. Windows API 프로그래밍에 대한 고유한 전자책 소개는 ZetCode에서 확인할 수 있습니다. 244 페이지와 114 개의 코드 예제가있는 PDF 형식으로.

inicio atrás arriba

DESTACADOS

  • LINKS


  • Dirección de Investigación

    Investigación • Avenida Bulnes 01890 • Punta Arenas • Chile
    Teléfono: +56 61 2 209 397 • Email: dir.investigacion@umag.cl