hDevHandle := CreateFile( PChar(strP), GENERIC_READ or GENERIC_WRITE,
FILE_SHARE_READ or FILE_SHARE_WRITE, @SecurityAttributes, OPEN_EXISTING, 0, 0);var
PreparsedData:PHIDPPreparsedData;
Success:Boolean ;
Capabilities:THIDPCaps;
INputReport: array [0..66] of CHAR;
OutputReport: array [0..66] of CHAR;
OutputReport1: array [0..66] of CHAR;
bread,bWritten:DWORD;
ii:Integer;
strv:string;
c:BYTE;
strGet:string;
iv:Integer;
begin
II:=1;
Success := HidD_GetPreparsedData(hDevHandle, PreparsedData);
if Success then
begin
FillChar(OutputReport, Length(OutputReport), 0);
FillChar(INputReport, Length(INputReport), 0);
HidP_GetCaps(PreparsedData, Capabilities);
Success := WriteFile( hDevHandle, OutputReport, 65, bWritten, 0);
if not Success then
me1.Lines.Add( '写入失败')
else
BEGIN
success:= ReadFile( hDevHandle, InputReport, 64,bWritten, 0);
bread:=GetLastError(); 写入成功后再读总返回失败 错误代码:1784
me1.Lines.Add( '写入:' + strCode);
END;
end;end;
FILE_SHARE_READ or FILE_SHARE_WRITE, @SecurityAttributes, OPEN_EXISTING, 0, 0);var
PreparsedData:PHIDPPreparsedData;
Success:Boolean ;
Capabilities:THIDPCaps;
INputReport: array [0..66] of CHAR;
OutputReport: array [0..66] of CHAR;
OutputReport1: array [0..66] of CHAR;
bread,bWritten:DWORD;
ii:Integer;
strv:string;
c:BYTE;
strGet:string;
iv:Integer;
begin
II:=1;
Success := HidD_GetPreparsedData(hDevHandle, PreparsedData);
if Success then
begin
FillChar(OutputReport, Length(OutputReport), 0);
FillChar(INputReport, Length(INputReport), 0);
HidP_GetCaps(PreparsedData, Capabilities);
Success := WriteFile( hDevHandle, OutputReport, 65, bWritten, 0);
if not Success then
me1.Lines.Add( '写入失败')
else
BEGIN
success:= ReadFile( hDevHandle, InputReport, 64,bWritten, 0);
bread:=GetLastError(); 写入成功后再读总返回失败 错误代码:1784
me1.Lines.Add( '写入:' + strCode);
END;
end;end;
InputReport 全0
ReadFile 用65时就一直停在此处不往下执行了
能不能帮我看下代码哪有问题