InitializeProcThreadAttributeList 함수(processthreadsapi.h)

프로세스 및 스레드 만들기를 위해 지정된 특성 목록을 초기화합니다.

구문

BOOL InitializeProcThreadAttributeList(
  [out, optional] LPPROC_THREAD_ATTRIBUTE_LIST lpAttributeList,
  [in]            DWORD                        dwAttributeCount,
                  DWORD                        dwFlags,
  [in, out]       PSIZE_T                      lpSize
);

매개 변수

[out, optional] lpAttributeList

특성 목록입니다. 이 매개 변수는 지정된 수의 특성을 지원하는 데 필요한 버퍼 크기를 결정하는 NULL일 수 있습니다.

[in] dwAttributeCount

목록에 추가할 특성의 수입니다.

dwFlags

이 매개 변수는 예약되어 있으며 0이어야 합니다.

[in, out] lpSize

lpAttributeList가 NULL이 아닌 경우 이 매개 변수는 입력에서 lpAttributeList 버퍼의 크기(바이트)를 지정합니다. 출력에서 이 매개 변수는 초기화된 특성 목록의 크기(바이트)를 받습니다.

lpAttributeList가 NULL인 경우 이 매개 변수는 필요한 버퍼 크기(바이트)를 받습니다.

반환 값

함수가 성공하면 반환 값이 0이 아닙니다.

함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.

설명

먼저 dwAttributeCount 매개 변수를 사용할 최대 특성 수로 설정하고 lpAttributeList 를 NULL로 설정하여 이 함수를 호출합니다. 함수는 lpSize 매개 변수에서 필요한 버퍼 크기를 바이트 단위로 반환합니다.

참고 이 초기 호출은 의도적으로 오류를 반환합니다. 이는 예상된 동작입니다.
 
lpAttributeList 버퍼의 데이터에 충분한 공간을 할당하고 함수를 다시 호출하여 버퍼를 초기화합니다.

목록에 특성을 추가하려면 UpdateProcThreadAttribute 함수를 호출합니다. 프로세스를 만들 때 이러한 특성을 지정하려면 dwCreationFlag 매개 변수에 EXTENDED_STARTUPINFO_PRESENT 지정하고 lpStartupInfo 매개 변수에서 STARTUPINFOEX 구조를 지정합니다. 여러 자식 프로세스에 동일한 STARTUPINFOEX 구조를 지정할 수 있습니다.

목록 사용을 마쳤으면 DeleteProcThreadAttributeList 함수를 호출합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 processthreadsapi.h(Windows 7, Windows Server 2008 Windows Server 2008 R2에 Windows.h 포함)
라이브러리 Kernel32.lib
DLL Kernel32.dll

참고 항목

DeleteProcThreadAttributeList

프로세스 및 스레드 함수

UpdateProcThreadAttribute