type
NBioAPI_TEMPLATE_DATA_PTR_2 = ^NBioAPI_TEMPLATE_DATA_2;
NBioAPI_TEMPLATE_DATA_2 = record
Length : DWORD; //just length of Data (not sizeof structure)
Data : Pointer; //variable length of data (NBioAPI_UINT8*)
end;
이렇게 선언된 것에서 Data를 가져오려고 하는데 잘 안됩니다.
tdata : pointer;
.
.
tempstr := '';
tdata := NBioAPI_TEMPLATE_DATA_PTR_2.Data;
SetLength(tempstr, NBioAPI_TEMPLATE_DATA_PTR_2.Length);
copymemory(tdata, @tempstr[1], Export_Data.FingerData2.Template.Length);
이렇게 하면 tempstr에 원하는 데이터가 들어갈것 같은데 계속 에러가 나네요.
---------------------------------------------------------------------------------------------------------------------
C++에서 텍스트로 만드는 부분
FILE* fp = fopen(szFullpath, "wb");
if (fp) {
fwrite(m_ExportData.FingerData2[f].Template[s].Data, m_ExportData.FingerData2[f].Template[s].Length, 1, fp);
fclose(fp);
} else {
bFailed = TRUE;
break;
}
이렇게 되는데 m_ExportData.FingerData2[f].Template[s].Data 이 포인터로 넘어오는데 C++에선 텍스트로 만들어지는 거 같은데 델파이로는 너무 힘듭니다.
m_ExportData.FingerData2[f].Template[s].Data 이 값을 어떻게 가져올수 있을까요?
니트젠 지문인식기 다루시나 보내요.. ㅎㅎ 저도 요즘 요거 조물딱 거리는데 방갑네요 ^^;
==> NBioAPI_TEMPLATE_DATA_PTR_2 는 변수인가요? 타입과 같은 변수 선언은 않됩니다..
==> tdata가 nil일 경우 에러가 발생합니다. 런타임에 말이죠..
아래님 말데로.. 거꾸로 넣으신것일수도요.. 의도하신건가요?!