【发布时间】:2021-07-17 17:07:46
【问题描述】:
我的 C++ 技能充其量是业余的,我需要编写一些代码以通过制造商提供的 .dll 与第 3 方传感器进行交互
因此,功能定义是由制造商提供的,但我真的不确定实现它们的正确方法。
根据 API 文档,我有两个结构,根据该文档定义,但我不知道如何将结构的指针传递给所需的函数 - HPK_GetSensorInformation(DeviceHandle, PUNIT_INTEGRATION_PARAMETER 积分参数, PUNIT_SENSOR_INFORMATION 传感器信息 );.
任何帮助将不胜感激。
谢谢!
附上代码:
#include <iostream>
#include <windows.h>
#include "CMOS_USB.h"
using namespace std;
int main(){
typedef struct _tag_UnitIntegrationParameter {
unsigned short Xray_Start_Threshold = 10;
unsigned short Integration_Stop_Threshold = 20;
double Integration_Time = 100;
} UNIT_INTEGRATION_PARAMETER, *PUNIT_INTEGRATION_PARAMETER;
typedef struct _tag_UnitSensorInformation {
UNIT_INTEGRATION_PARAMETER IntegParam;
unsigned short XXXX;
unsigned char YY;
unsigned char FW;
} UNIT_SENSOR_INFORMATION,*PUNIT_SENSOR_INFORMATION;
unsigned short ProductID = 0x4400;
HANDLE DeviceHandle;
HANDLE PipeHandle;
unsigned long sensor_return_status;
DeviceHandle = WINAPI USB_OpenDevice(ProductID);
PipeHandle = WINAPI USB_OpenPipe(DeviceHandle);
sensor_return_status = WINAPI HPK_GetSensorInformation(DeviceHandle,
PUNIT_INTEGRATION_PARAMETER IntegParam,
PUNIT_SENSOR_INFORMATION SensorInfo
);
WINAPI USB_CloseDevice(DeviceHandle);
return 0;
}
【问题讨论】: