1.delphi 新建动态库
File -> new -> other -> Dynamic -l… Library;
2.添加unit,将底层动态库dll方法 引用好
function NvUSB_lib_NvUSB_VenderCmd_SetData_test(hDevice : integer;icmd : Byte; P_Data : Pointer; nBytes : DWORD):Boolean; cdecl; external ‘DLL\NvUSB.dll’ name ‘NvUSB_VenderCmd_SetData’;
注意:底层库文件夹位置基于使用底层库的程序所在位置
3.二次封装
library Demodll;
uses
sharemem,
System.SysUtils,
System.Classes,
Interface in ‘Interface.pas’;
//二次封装 init_device
function Init_Device(IDCode1 : PAnsichar; var iRet : word) : boolean; cdecl;
var isconnect : boolean;
sarray,sarrayres : Array of ansichar;
s: string;
begin
result := false;
iret := CONNECT_FAILED;
//调用底层dll
if NvUSB_lib_NvUSB_VenderCmd_SetData(dev_hdx,ID_SET_SAY_HELLO, sarray , length(sarray)) then
begin
iret := CONNECT_SUCCESS;
end
else
begin
exit;
end;
end;
exports
Init_Device ;
begin
end.
4.运行 生成二次dll
注意二次封装动态库dll和底层动态库dll所在位置
如果您觉得这篇文章有用处的话,请动一动您的手指点一下赞,谢谢