• C语言_find族函数的使用,如何实现Windows文件加载


    windows目录查看器

    // 转到按钮处理函数
    #include <io.h>
    
    void CFindFileDlg::OnBnClickedOk()
    {
    	struct _wfinddata64_t c_file;
    	intptr_t hFile;
    	CListCtrl *pList = (CListCtrl *)GetDlgItem(IDC_FILE_LIST);
    	CString path;
    	CString str_time, str_type, str_size;
    	GetDlgItemText(IDC_BROWER, path);
    	path.Append(_T("*.*"));
    	if ((hFile = _wfindfirst64(path, &c_file)) == -1L)
    		return;
    	int i = 0;
    	int n;
    	pList->DeleteAllItems();
    	do 
    	{
    		n = pList->GetItemCount();
    		if (!(c_file.attrib & _A_HIDDEN)) // 显示非隐藏文件
    			pList->InsertItem(i, c_file.name);
    		COleDateTime t(c_file.time_write);
    		str_time.Format(_T("%d/%d/%d %d:%d"), t.GetYear(), t.GetMonth(), 
                                    t.GetDay(), t.GetHour(), t.GetMinute());
    		pList->SetItemText(n, 1, str_time);
    		
    		if (c_file.attrib & _A_SUBDIR)
    			pList->SetItemText(n, 2, _T("文件夹"));
    		else
    		{
    			CString name = c_file.name;
    			str_type = name.Mid(1 + name.ReverseFind(_T('.')));
    			pList->SetItemText(n, 2, str_type+_T("文件"));
    
    			str_size.Format(_T("%d"), c_file.size / 1024);
    			str_size.Append(_T("KB"));
    			pList->SetItemText(n, 3, str_size);
    		}
    		++i;
    	} while (_wfindnext64(hFile, &c_file) == 0);
    	_findclose(hFile);
    }
    

    效果实现

    加载失败

  • 相关阅读:
    第一个驱动
    call Eip 技巧
    Win32 XP 下和WIN7下获取Kernel32基址的方法
    利用伪造内核文件来绕过IceSword的检测
    HOOK IDT (1)第一种方法,Int 0x2e
    壳的编写 :【统一节区粒度】
    壳的编写 【文件打开选择对话框】
    71币值转换
    71打印沙漏
    介绍自己
  • 原文地址:https://www.cnblogs.com/veis/p/12724176.html
Copyright © 2020-2023  润新知