我正在寻找一些“数据库”/ XML格式的win32 API列表。
我需要它在win32 API和我正在使用的更高级语言(harbour / xharbour)之间轻松创建“转换层”。由于这运行Pcode,因此有必要将参数转换为C标准...
我没有做手动代码编写,而是想自动化这个过程......
例如,Windows API定义(取自MSDN)
DWORD WINAPI GetSysColor(
__in int nIndex
);
应该改变
HB_FUNC( GETSYSCOLOR )
{
hb_retnl( (LONG) GetSysColor( hb_parni( 1 ) ) );
}
发布于 2018-12-08 14:13:36
当然,你有Microsoft Platform SDK,但它是原始的.h C代码,很难解析!
VB用户(以及Delphi用户和其他一些语言)也做过类似的工作,例如ApiViewer有这样的数据库,但是在一些专有的二进制格式(.apv扩展名)中,你可能需要对它进行逆向工程。 同样,有一个API指南,它在Allapi.net上托管,但后来似乎是一个停车站点。它使用.api文件(再次使用二进制专有)。
发布于 2018-12-08 15:32:50
AFAIK,pinvoke.net只存储带有PInvoke定义的文本数据。如果您想要的东西可以用作预先解析的API数据库,那么这种方法并不是很有用。
可能你可以创建一个小的解析器,它将获取包含文件并将其转换为你需要的文件。在这种情况下,我建议使用lcc-win32的包含文件,因为它们几乎是无BS版本的SDK标题(它们没有附带一堆特殊的保留字)不得不忽视等)
https://stackoverflow.com/questions/-100000926
复制相似问题