我有一个使用来自dinput.dll(直接输入)的API的程序,我已对其进行监控,结果如下:
API名称:DirectInputCreateEx 模块名称:C:\ Windows \ system32 \ DINPUT.dll
关于另一个使用直接输入的程序:
API名称:DirectInputCreateA 模块名称:C:\ Windows \ system32 \ DINPUT.dll
此API将更新此注册表项:
HKEY_CURRENT_USER \系统\ CurrentControlSet \控制\ MediaProperties \ PrivateProperties \ DirectInput的
我想知道如何使用Delphi编写一个只为DirectInput dll调用此API的代码?
非常感谢任何帮助...
答案 0 :(得分:1)
要调用直接输入,您需要对头文件进行Delphi转换。据我所知,最好的翻译可以从Clootie graphics pages获得。
您需要使用DirectInput.pas
标题翻译。
至于编写一个没有显示Window的程序,这里是最简单的模板:
program MyProgram;
begin
//write your program's code here
end.
您在评论中说明您要拨打的唯一功能是DirectInputCreateEx
。要调用该函数,您需要以下导入声明:
function DirectInputCreateEx(hinst: THandle; dwVersion: DWORD;
const riidltf: TGUID; out ppvOut; punkOuter: IUnknown): HResult;
stdcall; external 'dinput.dll';