다음을 통해 공유


API 호출 샘플

업데이트: 2007년 11월

이 샘플은 Win32 API 함수를 호출하여 프로세스와 창을 열거 및 제어하고 시스템 설정을 쿼리 및 변경하는 방법을 보여 줍니다.

설치 샘플 및 지침을 얻으려면

  • 다음 중 하나 이상을 수행합니다.

    • 도움말 메뉴에서 샘플을 클릭합니다.

      추가 정보 파일에서 샘플에 대한 정보를 확인합니다.

    • Visual Studio 2008 Samples 웹 사이트를 방문합니다. 이 웹 사이트에서 최신 버전의 샘플을 얻을 수 있습니다.

    • Visual Studio가 설치되어 있는 컴퓨터에서 샘플을 찾습니다. 기본적으로 샘플과 추가 정보 파일은 drive:\Program Files\Microsoft Visual Studio 9.0\Samples\lcid에 설치되어 있습니다. Visual Studio Express Editions의 경우에는 모든 샘플이 온라인에 있습니다.

자세한 내용은 샘플 파일 찾기를 참조하십시오.

보안 정보:

이 샘플 코드는 개념을 설명하기 위한 것으로 개념과 관련된 코드만을 보여 줍니다. 특정 환경에 대한 보안 요구 사항을 충족하지 못 할 수 있고 표시된 그대로 사용하면 안됩니다. 안전하고 강력한 프로젝트를 만들려면 보안 및 오류 처리 코드를 추가하는 것이 좋습니다. Microsoft에서는 어떠한 보증도 없이 “있는 그대로” 이 샘플 코드를 제공합니다.

이 샘플을 실행하려면

  • F5 키를 누릅니다.

세부 항목

Win32API 클래스는 별도의 파일인 Win32API.vb에서 정의됩니다. Declare 문을 사용하여 각 API 선언을 Win32API 클래스의 Shared 멤버로 사용할 수 있습니다. 공유 멤버는 클래스 이름을 사용하여 직접 호출할 수 있으며 클래스의 인스턴스를 만들지 않아도 사용할 수 있습니다.

기본 폼에는 네 개의 탭 페이지가 있는 탭 컨트롤이 포함되어 있습니다. 각 탭 페이지는 Win32 API 호출을 사용한 다음 작업을 보여 줍니다.

  • Active Processes   목록 뷰를 현재 실행되고 있는 모든 Windows 프로세스로 채웁니다. 대리자를 사용하여 Win32 콜백 함수인 EnumWindows를 사용하는 방법을 주로 보여 줍니다.

  • Active Windows   Win32 API를 사용하여 콜백 함수인 EnumWindows의 결과를 필터링하여 ListBox 컨트롤을 모든 활성 창으로 채웁니다. 이 예제에서는 두 메서드를 사용할 때의 차이점을 강조하기 위해 Declare 문 대신 DllImportAttribute 클래스를 사용하여 EnumWindows를 정의합니다.

  • Show Window   사용자가 창 캡션 및 클래스 이름을 입력하고 창을 앞으로 가져올 수 있도록 합니다. 이 예제에서는 함수에 서로 다른 형식의 변수를 전달할 수 있도록 여러 형식의 매개 변수를 하나의 Win32 API 함수로 오버로드하는 방법을 주로 보여 줍니다.

  • API Calls   Win32 API 호출인 GetDiskFreeSpace, GetDiskFreeSpaceEx, GetDriveType, CreateDirectory, SwapMouseButton, IsPwrHibernateAllowed, SetSuspendStateBeep의 사용 방법을 보여 줍니다. 이들은 관리되는 클래스에 해당하는 요소로부터 얻을 수 없는 정보를 반환하는 호출의 예입니다.

참고 항목

참조

DllImportAttribute

Declare 문