bool CFileTransfer::IsExeFile(CString filepath)
{// *.exe,*.com,*.sys,*.cab,*.dox,*.dll,*.bat,*.dat, 多媒体格式(*.avi,*.wmv,*.rm,*.mp3,*.mp4...)int l = false;int b = false;HMODULE hMod = ::GetModuleHandle(filepath);if (hMod == NULL){hMod = ::LoadLibrary(filepath); l = true;}if (hMod == NULL) return false;PIMAGE_NT_HEADERS pe = NULL;try{if(::PIMAGE_DOS_HEADER(hMod)->e_magic == IMAGE_DOS_SIGNATURE){pe = ::PIMAGE_NT_HEADERS(PBYTE(hMod) + ::PIMAGE_DOS_HEADER(hMod)->e_lfanew);if(pe->Signature == IMAGE_NT_SIGNATURE) {b = true;}}//IMAGE_VXD_SIGNATURE,即Win3.X中的Virtual Device Driver//IMAGE_OS2_SIGNATURE,即IBM开发后又放弃的OS/2系统的程序}catch(...) {}if (l && hMod) ::FreeLibrary(hMod);return b;
}

判断文件是否为可执行程序相关推荐

  1. c++ 判断文件夹是否存在,不存在则创建(可建多级目录)

    c++中,<io.h>中的_access可以判断文件是否存在,<direct.h>中的_mkdir可以创建文件. 建单级目录: #include <io.h> #i ...

  2. node 判断文件夹是否存在

    判断文件夹是否存在 let filePath =path.join(__dirname,'../')+'/download_tmp/'fs.exists(filePath, function(exis ...

  3. 虚拟机下判断文件或目录是否存在

    Linux环境中判断文件或目录是否存在 #!/bin/bash # 判断文件或目录是否存在 if [ $# -eq 0 ] ;then echo "未输入任何参数,请输入参数" e ...

  4. linux c 判断文件打开文件,Linux 用C语言判断文件和文件夹

    Linux 用C语言判断文件和文件夹 #include #include #include #include int access(const char *pathname, int mode); i ...

  5. 用matlab判断文件是否存在_判断文件夹、文件是否存在、创建文件 c++ matlab

    Matlab: 1. exist判断当前目录是否存在指定文件夹 例子1 if ~exist('Figure') mkdir('Figure') % 若不存在,在当前目录中产生一个子目录'Figure' ...

  6. Dos判断文件夹有没有存在,如果存在删除,不存在创建

    Dos判断文件夹有没有存在,如果存在删除,不存在创建 dir d:\ | find "liang\dd"    if %errorlevel%==0 goto ok        ...

  7. C#中判断文件夹或文件是否存在的方法

    c#中操作IO非常简单,下面介绍如何判断文件夹或文件是否存在的方法.  代码如下:  //判断文件夹是否存在,不存在则创建文件夹  if (!System.IO.Directory.Exists(@& ...

  8. 根据文件头数据判断文件类型

    现有一文件,其扩展名未知或标记错误.假设它是一个正常的.非空的文件,且将扩展名更正后可以正常使用,那么,如何判断它是哪种类型的文件? 在后缀未知,或者后缀被修改的文件,依然通过文件头来判断该文件究竟是 ...

  9. php 显示要上传的图片格式,php判断文件上传图片格式的实例详解

    php判断文件上传图片格式的实例详解 判断文件图片类型, $type = $_FILES['image']['tmp_name'];//文件名 //$type = $this->getImage ...

最新文章

  1. 《C#精彩实例教程》小组阅读01 – MSDN是什么?
  2. java 数据库数据写接口_Java读取接口数据并保存到数据库
  3. 一文攻破枚举类型-C语言
  4. 浏览器模式用户代理字符串(IE)
  5. python硬件_「大神器!」硬件的AI性能测试Python库发布
  6. php去掉字符串末尾数字,PHP-RegEx:删除字符串末尾的数字,并删除特定字符串后的文本...
  7. 端口被占用的解决方案
  8. SIP(Session Initiation Protocol,会话初始协议)
  9. redis数据类型-字符串
  10. 微信小程序生成海报及源代码
  11. java 打印心_在Java中打印输出心形图案!
  12. canvas画布调节字符间距
  13. 得到语音下载(dedaodown)
  14. springboot 集成kafka 实现多个customer不同group
  15. webpack和脚手架
  16. ArduPilot之H743+BMI270x2+First Normal Takeoff
  17. 华硕计算机用户名默认,华硕路由器设置方法_华硕(ASUS)路由器怎么设置?-192路由网...
  18. 计算机发展速度快的因素,影响计算机运算速度的主要因素是( )。A.主频B.字长C.内存容量D.指令系统的合理性_考题宝...
  19. Java设计模式之工厂模式 (工厂方法模式)
  20. Mission Planner中级应用(APM或PIX飞控)2——飞控减振

热门文章

  1. mfc 消息消息队列概念_必看入门秘籍——解密原理:消息中间件之RabbitMQ
  2. linux线程并不真正并行,Linux系统编程学习札记(十二)线程1
  3. 成功解决Could not install packages due to an EnvironmentError: [WinError 5] 拒绝访问
  4. Interview:算法岗位面试—10.30上午上海某信息公司(偏图算法)技术面试之单链表反转、给定整型数组和目标值 二分法查找+下午上海某金融公司(AI岗位,上市)CTO和主管技术面试之Xcepti
  5. TF之DeepDream:DeepDream前世今生之简介、安装、使用方法之详细攻略
  6. Python语言学习:python语言的特点、入门、基础用法之详细攻略
  7. 解决OpenCV问题:OpenCV Error: Assertion failed (!empty()) in cv::CascadeClassifier::detectMultiScale,
  8. try-catch-finally 与返回值的修改
  9. VS打开文件,解决方案资源管理器自动定位到文件位置
  10. 透过源码看Session