使用winapi搜索隐藏文件

Posted

技术标签:

【中文标题】使用winapi搜索隐藏文件【英文标题】:searching for hidden files using winapi 【发布时间】:2010-06-01 22:03:04 【问题描述】:

你好 我想在特定的给定路径中搜索隐藏文件和目录,但我不知道如何搜索隐藏文件我知道如何搜索普通文件和目录我做了这段代码但我卡住了无法制作它只搜索隐藏文件

#include "stdafx.h"
#include <windows.h>


int _tmain(int argc, _TCHAR* argv[])

    TCHAR *fn;
    fn=L"d:\\*";
    HANDLE f;

    WIN32_FIND_DATA data;
    
        FILE_ATTRIBUTE_HIDDEN;
    

    f=FindFirstFile(fn,&data);
    if(f==INVALID_HANDLE_VALUE)
        printf("not found\n");
        return 0;
    
    else

        _tprintf(L"found this file: %s\n",data.cFileName);
        while(FindNextFile(f,&data))
            _tprintf(L"found this file: %s\n",data.cFileName);
        
    

    FindClose(f);
    return 0;

【问题讨论】:

【参考方案1】:

WIN32_FIND_DATA 结构没有告诉 FindFirstFile/FindNextFile 要搜索什么;它正在返回搜索结果。您需要对 dwFileAttributes 成员进行位掩码,以确定文件是否隐藏。

if ((data.dwFileAttributes & FILE_ATTRIBUTE_HIDDEN) != 0)

【讨论】:

【参考方案2】:

WIN32_FIND_DATA 保存文件属性成员

http://msdn.microsoft.com/en-us/library/aa365740(VS.85).aspx

dwFileAttributes

根据 FILE_ATTRIBUTE_HIDDEN 验证它(避免使用 FILE_ATTRIBUTE_DIRECTORY 项)

【讨论】:

以上是关于使用winapi搜索隐藏文件的主要内容,如果未能解决你的问题,请参考以下文章

如何使用PowerShell递归搜索目录中的所有文件,包括隐藏目录中的隐藏文件?

MUIU隐藏功能小合集(二)

如何在搜索引擎中隐藏 doc 文件

苹果Mac操作系统下怎么显示隐藏文件

Mac下如何显示隐藏文件

mac怎么把隐藏文件夹图标显示