C++ ヘッダー ファイルの変換に問題があります。Delphi コードを実行すると、「無効なパラメータ」を表すコード 125 が返されます。これまでに行ったことを説明します。
ヘッダー ファイル (フラグメント):
IDSEXP is_AOI(HIDS hCam, UINT nCommand, void *pParam, UINT SizeOfParam);
私の翻訳:
function is_AOI(hCam: Cardinal; Command: Cardinal; Param: Pointer; ParamSize: Cardinal): integer; cdecl; external 'ueye_api.dll';
C++ コードの例:
IS_SIZE_2D imageSize;
imageSize.s32Width = m_nSizeX;
imageSize.s32Height = m_nSizeY;
is_AOI(m_hCam, IS_AOI_IMAGE_SET_SIZE, (void*)&imageSize, sizeof(imageSize));
私のコード:
var
size2D: TSize2D;
size2D.S32X := maxWidth;
size2D.S32Y := maxHeight;
ret := is_AOI(cam, IS_AOI_IMAGE_SET_SIZE, Pointer(@size2D), SizeOf(size2D));
C++ 構造体:
typedef struct
{
INT s32Width;
INT s32Height;
} IS_SIZE_2D;
そして私の翻訳:
TSize2D = record
S32X, S32Y: integer;
end;