C++ 找不到标识符FindFirstFile
我正在尝试使用windows API中的函数FindFirstFile,我以前使用过它,但现在找不到了。它只是告诉我找不到标识符。我有FindFirstFileExW、FindFirstFileExA和FindFirstFileEx的其他变体,但我没有FindFirstFile。我甚至可以在FileAPI.h中包含特定的头文件。我读到了一个类似的问题,我应该在windows.h之前包含stdafx.h,但我甚至找不到stdafx.h 如果您不能回答这个问题,请描述如何使用FindFirstFileEx执行与FindFirstFile相同的操作,因为FindFirstFileEx在msdn上被描述为具有更多属性的FindFirstFile 支持的最低客户端:Windows XP[仅限桌面应用程序] 通用应用程序无法使用该API。通用的等价物是 支持的最低客户端:Windows XP[仅限桌面应用程序] 通用应用程序无法使用该API。通用等价物是。根据,FindFirstFile在10.0.14393.0版的Windows 10中存在,而FindFirstFileEx在10.0.10240.0版中存在,以及阈值1 a.k.a.RTM a.k.a.版本1507中的10240。因此,您可能拥有旧版本的Windows API。我不知道为什么微软会包括一个功能,而不是另一个,而这两个功能以前都是可用的-也许只是一个疏忽 因此,最简单的解决方案是升级到Windows 10周年更新或更高版本 如果做不到这一点,这也是一个非常简单的代码更改。根据: 以下电话:C++ 找不到标识符FindFirstFile,c++,windows,win-universal-app,C++,Windows,Win Universal App,我正在尝试使用windows API中的函数FindFirstFile,我以前使用过它,但现在找不到了。它只是告诉我找不到标识符。我有FindFirstFileExW、FindFirstFileExA和FindFirstFileEx的其他变体,但我没有FindFirstFile。我甚至可以在FileAPI.h中包含特定的头文件。我读到了一个类似的问题,我应该在windows.h之前包含stdafx.h,但我甚至找不到stdafx.h 如果您不能回答这个问题,请描述如何使用FindFirstFil
FindFirstFileEx( lpFileName,
FindExInfoStandard,
lpFindData,
FindExSearchNameMatch,
NULL,
0 );
FindFirstFile( lpFileName, lpFindData );
相当于以下调用:
FindFirstFileEx( lpFileName,
FindExInfoStandard,
lpFindData,
FindExSearchNameMatch,
NULL,
0 );
FindFirstFile( lpFileName, lpFindData );
根据,FindFirstFile在10.0.14393.0版本的Windows 10中存在,而FindFirstFileEx在10.0.10240.0版本中存在,以及阈值1 a.k.a.RTM a.k.a.版本1507中的10240。因此,您可能拥有旧版本的Windows API。我不知道为什么微软会包括一个功能,而不是另一个,而这两个功能以前都是可用的-也许只是一个疏忽
因此,最简单的解决方案是升级到Windows 10周年更新或更高版本
如果做不到这一点,这也是一个非常简单的代码更改。根据:
以下电话:
FindFirstFileEx( lpFileName,
FindExInfoStandard,
lpFindData,
FindExSearchNameMatch,
NULL,
0 );
FindFirstFile( lpFileName, lpFindData );
相当于以下调用:
FindFirstFileEx( lpFileName,
FindExInfoStandard,
lpFindData,
FindExSearchNameMatch,
NULL,
0 );
FindFirstFile( lpFileName, lpFindData );
你使用哪种编译器?什么版本?例如,它是Visual Studio 2013吗?@BarmakShemirani vs2015 V140这毫无意义。FindFirstFile和FindFirstFileEx位于同一头文件中。包括windows。h应该足够了。您可能需要也可能不需要stdafx.h,如果VS2015没有对此抱怨,那么您就不需要它。也许项目设置搞砸了。如果您没有大型项目,请创建一个新的Win32项目。以防万一是IntelliSense在抱怨,那么你可以忽略它。请决定使用哪个平台。您使用winapi和win universal app对此进行了标记,但它们是不同的。FindFirstFile是winapi函数,但不是win universal app函数。对于win universal应用程序,您可以使用。@AndrewWilson-只需在中查找它,它会告诉您如何使用FindFilex,甚至包括一个提供与使用FindFile相同输出的示例。现在的孩子们不知道他们有多么容易——从前,我们不得不花几个小时在图书馆里翻阅纸质书。现在,你已经触手可及了。罗伯·施耐德:你能行!你使用哪种编译器?什么版本?例如,它是Visual Studio 2013吗?@BarmakShemirani vs2015 V140这毫无意义。FindFirstFile和FindFirstFileEx位于同一头文件中。包括windows。h应该足够了。您可能需要也可能不需要stdafx.h,如果VS2015没有对此抱怨,那么您就不需要它。也许项目设置搞砸了。如果您没有大型项目,请创建一个新的Win32项目。以防万一是IntelliSense在抱怨,那么你可以忽略它。请决定使用哪个平台。您使用winapi和win universal app对此进行了标记,但它们是不同的。FindFirstFile是winapi函数,但不是win universal app函数。对于win universal应用程序,您可以使用。@AndrewWilson-只需在中查找它,它会告诉您如何使用FindFilex,甚至包括一个提供与使用FindFile相同输出的示例。现在的孩子们不知道他们有多么容易——从前,我们不得不花几个小时在图书馆里翻阅纸质书。现在,你已经触手可及了。罗伯·施耐德:你能行!