winapi - InterlockedPushListSList丢失。它在哪里?

我正在使用Visual Studio 2010 Ultimate SP1在Windows Server 2008机器上进行开发。不幸的是,函数 InterlockedPushListSList 导致错误,因为在我的WinBase.h副本中未定义该函数。

自己声明该功能无效;发生链接器错误。看来该函数未在Windows库中为我的编译器定义。但是链接到上面的文档指出它可以用于我的操作系统。

一些谷歌搜索发现该API自Windows Longhorn开发以来就已经存在,尽管它来自非官方的source,所以从我的观点来看,应该没有任何理由会丢失它。

这个功能真的存在吗?如果是这样,我在哪里可以得到它?

最佳答案

我能够重现MSVC 2010和Windows SDK v7.0A的问题。 WinBase.h中不存在InterlockedPushListSList。声明它时,我首先也遇到了链接错误...直到我意识到我忘记了extern "C" :-)。也许您也忘记了这一点?如果声明,我可以编译和链接

extern "C"
PSLIST_ENTRY  FASTCALL InterlockedPushListSList(
  _Inout_  PSLIST_HEADER ListHead,
  _Inout_  PSLIST_ENTRY List,
  _Inout_  PSLIST_ENTRY ListEnd,
  _In_     ULONG Count
);

https://stackoverflow.com/questions/11980721/

相关文章:

.net - ObservableCollection-无法实现,因为它没有匹配的返回类型

c# - 第一次使用msbuild

actionscript-3 - 在函数外部使用变量。错误-参数数目不正确。预期1

c# - 较少严格的CodeDomProvider来编译DLL

matlab - 在matlab中创建一个exe文件的问题

android - 编译应用程序时出现LogCat错误

windows - libqxt编译-mingw32-make异常

c# - 简单的代理asp.net错误

cocos2d-iphone - 在Xcode中禁用Apple Mach-o链接器错误

flash - 无法解析 to a component imple