NVAPI을 사용할 때 NvAPI_DISP_GetDisplayConfig에 문제가 있습니다. NvAPI_DISP_GetDisplayConfig에 대한 두 번째 호출에서 AppCrash가 발생합니다. 이유를 알 수없는 것 같습니다.NvAPI_DISP_GetDisplayConfig를 사용하는 방법?
NvU32 count = 0;
status = NvAPI_DISP_GetDisplayConfig(&count, NULL);
if (status != NVAPI_OK)
PrintError(status);
printf("Configs: %i\n", count);
NV_DISPLAYCONFIG_PATH_INFO *configinfos = new NV_DISPLAYCONFIG_PATH_INFO[count];
configinfos[0].version = NV_DISPLAYCONFIG_PATH_INFO_VER;
status = NvAPI_DISP_GetDisplayConfig(&count, configinfos);
if (status != NVAPI_OK)
PrintError(status);
내 시스템에서는 첫 번째 호출 후 개수 = 2입니다. NvAPI_DISP_GetDisplayConfig에 노트는 말 :
NVAPI_INTERFACE NvAPI_DISP_GetDisplayConfig (NvU32 * pathInfoCount __inout
,
을 __out_ecount_full_opt * pathInfoCount NV_DISPLAYCONFIG_PATH_INFO *의 PathInfo
)설명 :이 API는 호출자가 현재 글로벌 디스플레이를 검색 할 수 있습니다
구성.
사용법 :
첫 번째 패스 :의 PathInfo는
가 pathInfoCount를 가져 NULL로 설정하여 발신자는() NvAPI_DISP_GetDisplayConfig를 호출해야하는 호출자가 다음과 같이 필요한 모든
구성 정보를 가져 오기 위해이 세 번 호출해야 할 수도 있습니다.
두 번째 패스 :
의 번호를 기준으로 pathInfo에 대한 메모리를 할당합니다. // 첫 번째 패스에서 가져온 pathInfoCount! //! targetInfoCount.
sourceModeInfo가 필요한 경우 메모리를 할당하거나 NULL로 초기화 할 수 있습니다.
번째 패스 (선택만을 대상 정보가 필요한 경우 필수) : (두 번째 패스)에서
targetInfoCount 수에 대하여 targetInfo
위한 메모리를 할당한다. 지원 OS : Windows Vista 이상
고마워.
편집 : configinfos [0] .sourceModeInfo = NULL을 사용하지 않으려했습니다. 또한 배열을 반복하여 모든 .version 및 .sourceModeInfo를 사용하지 않도록 설정하려고 시도했습니다 (배열의 첫 번째 항목에 버전 만 설정 한 문서의 예)