gpt4 book ai didi

visual-studio-2010 - 警告 C4229 : anachronism used : modifiers on data are ignored

转载 作者:行者123 更新时间:2023-12-04 19:45:41 26 4
gpt4 key购买 nike

下面的片段是更大文件中更大函数的一部分。我已将其简化为我认为能够解释我当前问题的基本要素。

我正在使用 Visual Studio 2010。

调用 RegConnectRegistryA 的行导致编译器如此警告我:“警告 C4229:使用的时代错误:忽略数据修饰符”。这是编译器输出中唯一的警告或错误。构建成功,可执行文件按预期运行。但我确实想摆脱那个警告。 (老实说,我想它已经在那里好几个月了。)

extern "C" __declspec(dllexport) void whoOpsRegistryGetREG_SZ(
LPCSTR szServer,
LPCSTR szKey,
LPCSTR szValue,
char* szReturn,
int iSize)
{
HKEY hKey;
LONG WINAPI lReturn = ::RegConnectRegistryA(
szServer,
HKEY_LOCAL_MACHINE,
&hKey);
}

我在其他帖子中读到的内容使我相信它与#includes 有某种关联。所以他们来了。如果您需要引号中的任何头文件的内容,请告诉我。

#include "stdafx.h"
#include <windows.h>
#include <initguid.h>
#include <ole2.h>
#include <mstask.h>
#include <msterr.h>
#include <objidl.h>
#include <wchar.h>
#include <stdio.h>
#include <stdarg.h>
#include <lm.h>
#include "whoOpsPrivate.h"
#include "whoOps.h"
#include "jni.h"
#include "whoOps_TaskScheduler.h"
#include "whoOps_ServiceMangler.h"
#include "whoOps_RegistryRaptor.h"
#include "../../cyclOps.h"

谢谢!

最佳答案

在我看来,问题在于 WINAPI 实际上是一个调用约定(IIRC 结果表明 stdcall),因此将其应用于变量 lResult 的声明。我没有方便测试的 Windows 开发环境,但我强烈怀疑如果删除 WINAPI 警告会消失。

关于visual-studio-2010 - 警告 C4229 : anachronism used : modifiers on data are ignored,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7214244/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com