Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在无.net环境中,我在哪里可以找到windows API常量列表_Windows_Delphi - Fatal编程技术网

在无.net环境中,我在哪里可以找到windows API常量列表

在无.net环境中,我在哪里可以找到windows API常量列表,windows,delphi,Windows,Delphi,我想找到一些windows API常量的值,例如但不限于& 查看网络会让我知道它们是用来做什么的,而不是它们的基本价值 关于stackOverflow有一个非常类似的问题,但是所有的答案都是针对.net的,或者假设我有Windows SDK,而据我所知我没有 那么我在哪里可以找到它们呢 如果这有什么不同的话,我使用的是Delphi2007,虽然它在消息单元中有很多内容,但它并没有包含所有内容,包括一些最新的内容 谢谢您可以查看windows单位源(和相关单位)中的常量。它们的使用评论有限 win

我想找到一些windows API常量的值,例如但不限于&

查看网络会让我知道它们是用来做什么的,而不是它们的基本价值

关于stackOverflow有一个非常类似的问题,但是所有的答案都是针对.net的,或者假设我有Windows SDK,而据我所知我没有

那么我在哪里可以找到它们呢

如果这有什么不同的话,我使用的是Delphi2007,虽然它在消息单元中有很多内容,但它并没有包含所有内容,包括一些最新的内容


谢谢

您可以查看windows单位源(和相关单位)中的常量。它们的使用评论有限

windows SDK帮助提供了更多答案

否则,请在internet上访问MSDN

要得到一份完整的清单需要一些研究。但最终您将能够找到所有答案。

下载并使用您喜爱的全文搜索工具搜索头文件(所有.h文件)

可以在紧要关头(常量)服务,但不一定拥有一切


消息值在所有开发环境中都是恒定的。

大多数消息值可以在VCL源中找到,主要是在Windows.pas文件中。最好的方法是执行搜索|在文件中查找,键入要查找其值的常量的名称,设置搜索目录选项,将文件掩码设置为*.pas,然后输入包含Windows.pas的文件夹的路径。IDE将找到常量的所有用法,并将它们放在搜索结果窗口中;双击该窗口中的源代码行将在该行打开文件

正如Kevin和GameCat所提到的,其他的可以在Windows SDK的头文件(.h)中找到,可以从MSDN下载。

您可以使用。 最初是为VB6开发的,它可以设置为用对象pascal语言显示声明,这样可以节省一些输入


不过请注意,它的数据库并不完美。有些函数定义不正确,有些常量也不正确(比如0xFFFF而不是0xFFFFFF)。

除了其他人所说的(都是有效的好建议),谷歌是你的朋友。搜索“#定义WM#U Whatever”


例如:

LVM_ENABLEGROUPVIEW和co位于CommCtrls.pas中-它们可能位于Delphi 2007中,但我没有检查:

  LVM_FIRST               = $1000;     
  LVM_SETGROUPMETRICS         = LVM_FIRST + 155;
  LVM_GETGROUPMETRICS         = LVM_FIRST + 156;
  LVM_ENABLEGROUPVIEW         = LVM_FIRST + 157;
  LVM_SORTGROUPS              = LVM_FIRST + 158;
WM\u SHOWWINDOW
应该在Windows.pas for Delphi 2007中-开始搜索
SW\u HIDE
。或者,您可以查看,它不仅包含您要查找的值,而且还显示了如何以类型安全的方式使用它们

Delphi 2007的CommCtrl.pas中有许多消息和API宏,它们在VCL中没有任何地方使用,也没有在Delphi中记录,因此该单元始终非常值得一看

更一般地说,如果在MSDN(或Delphi帮助文件)上查找任何API调用,它会在函数信息的底部列出头文件的名称。如果此标题位于Win*.h中,请查看Windows.pas。在pas文件中可以找到具有该名称的大多数其他内容(因此commctrl.h变为commctrl.pas)


更新:
LVM_ENABLEGROUPVIEW
以及
ListView_ENABLEGROUPVIEW
宏在Delphi 2007上可用。

优秀的Delphi JEDI项目已将大多数Windows API头文件转换为Delphi/pascal。请在站点上查看win32api。

Windows.pas没有用于大多数常用控件的常量。这些都在CommCtrl.pas中。@Cobus:我是说Windows.pas都有吗?:-)你一定错过了我帖子中的“在文件中查找”部分。它涵盖了在Windows.pas中找不到的内容。