首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Win32 API函数定义是以“数据库”/ XML格式提供的吗?

Win32 API函数定义是以“数据库”/ XML格式提供的吗?
EN

Stack Overflow用户
提问于 2018-12-08 05:55:17
回答 2查看 0关注 0票数 0

我正在寻找一些“数据库”/ XML格式的win32 API列表。

我需要它在win32 API和我正在使用的更高级语言(harbour / xharbour)之间轻松创建“转换层”。由于这运行Pcode,因此有必要将参数转换为C标准...

我没有做手动代码编写,而是想自动化这个过程......

例如,Windows API定义(取自MSDN)

代码语言:javascript
复制
DWORD WINAPI GetSysColor(
  __in  int nIndex
);

应该改变

代码语言:javascript
复制
HB_FUNC( GETSYSCOLOR )
{
    hb_retnl( (LONG) GetSysColor( hb_parni( 1 ) ) );
}
EN

回答 2

Stack Overflow用户

发布于 2018-12-08 14:13:36

当然,你有Microsoft Platform SDK,但它是原始的.h C代码,很难解析!

VB用户(以及Delphi用户和其他一些语言)也做过类似的工作,例如ApiViewer有这样的数据库,但是在一些专有的二进制格式(.apv扩展名)中,你可能需要对它进行逆向工程。 同样,有一个API指南,它在Allapi.net上托管,但后来似乎是一个停车站点。它使用.api文件(再次使用二进制专有)。

票数 0
EN

Stack Overflow用户

发布于 2018-12-08 15:32:50

AFAIK,pinvoke.net只存储带有PInvoke定义的文本数据。如果您想要的东西可以用作预先解析的API数据库,那么这种方法并不是很有用。

可能你可以创建一个小的解析器,它将获取包含文件并将其转换为你需要的文件。在这种情况下,我建议使用lcc-win32的包含文件,因为它们几乎是无BS版本的SDK标题(它们没有附带一堆特殊的保留字)不得不忽视等)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100000926

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档