就下载了个HP DreamColor Calibration Solution玩玩,发现里面有个可疑的dll名为DreamColorDLL.dll感觉可能存在写入硬件解码板的接口。
于是把它逆向了,不过暂时没弄清楚这个玩意怎么用。
调用方式以及声明文件push到github上了:https://github.com/csersoft/DCLib_Test
下面是目前解析出的接口:
public: __thiscall CDreamColorDLLApp::CDreamColorDLLApp(void)
public: __thiscall CDreamColorDLLApp::~CDreamColorDLLApp(void)
public: bool __thiscall CDreamColorDLLApp::CalibratePrescription(struct Prescription *)
public: enum DC_ERROR __thiscall CDreamColorDLLApp::CheckErrorReturn(void)
public: enum DC_ERROR __thiscall CDreamColorDLLApp::CheckPrescriptionGamut(struct Prescription *)
public: void __thiscall CDreamColorDLLApp::ForceUSBConnection(void)
public: short __thiscall CDreamColorDLLApp::GetBackLightHours(short)
public: bool __thiscall CDreamColorDLLApp::GetBackLightYxy(double *,double *,double *)
public: bool __thiscall CDreamColorDLLApp::GetColorSpaceName(short,char *)
public: bool __thiscall CDreamColorDLLApp::GetColorTempFrom_xy(double *,double,double)
public: int __thiscall CDreamColorDLLApp::GetCurrentColorSpace(void)
public: bool __thiscall CDreamColorDLLApp::GetDaylightColorTemp_xy(double,double *,double *)
public: bool __thiscall CDreamColorDLLApp::GetDisplayEDIDName(char *)
public: int __thiscall CDreamColorDLLApp::GetDisplayIndex(void)
public: bool __thiscall CDreamColorDLLApp::GetDisplayMaxLum(double *)
public: bool __thiscall CDreamColorDLLApp::GetDisplayName(unsigned long,unsigned long,char *)
public: int __thiscall CDreamColorDLLApp::GetDisplayTypeFromIndexList(int)
public: bool __thiscall CDreamColorDLLApp::GetFactoryPrescription(short,struct Prescription *)
public: int __thiscall CDreamColorDLLApp::GetNumberOfColorSpaces(short)
public: int __thiscall CDreamColorDLLApp::GetNumberOfPrescriptions(void)
public: bool __thiscall CDreamColorDLLApp::GetObiWanSerialNumber(char *,int)
public: enum DC_ERROR __thiscall CDreamColorDLLApp::GetPrescription(short,struct Prescription *)
public: bool __thiscall CDreamColorDLLApp::GetSerialNumber(unsigned long,unsigned long,char *)
public: bool __thiscall CDreamColorDLLApp::GetSerialNumber(char *)
public: bool __thiscall CDreamColorDLLApp::IsFactoryName(char *)
public: bool __thiscall CDreamColorDLLApp::IsThisDisplayDreamColor2(unsigned long,unsigned long)
public: bool __thiscall CDreamColorDLLApp::IsThisDisplayDreamColor(unsigned long,unsigned long)
public: bool __thiscall CDreamColorDLLApp::OpenDCMulitpledisplays(int *)
public: int __thiscall CDreamColorDLLApp::OpenDCdisplay(void)
public: bool __thiscall CDreamColorDLLApp::ResetFactoryPrescription(short,struct Prescription *)
public: bool __thiscall CDreamColorDLLApp::SelectColorSpace(short)
public: bool __thiscall CDreamColorDLLApp::SetBackLightHours(int,int)
public: bool __thiscall CDreamColorDLLApp::SetBackLightYxy(double,double,double)
public: bool __thiscall CDreamColorDLLApp::SetCalibrator(void *)
public: bool __thiscall CDreamColorDLLApp::SetDisplayIndex(int,bool)
public: bool __thiscall CDreamColorDLLApp::SetDisplayIndex(int,bool,int)
public: bool __thiscall CDreamColorDLLApp::SetPrescription(short,struct Prescription *)
public: void __thiscall CDreamColorDLLApp::TestBacklight(void)
public: bool __thiscall CDreamColorDLLApp::TestUSBConnection(void)
public: bool __thiscall CDreamColorDLLApp::TestUSBConnectionWithSerialNumber(char const *)
private: int __thiscall CDreamColorDLLApp::InitializePrescriptions(void)
private: bool __thiscall CDreamColorDLLApp::isXP(void)