专注于高品质PHP技术等信息服务于一体 [STIEMAP] [RSS]

百度提供的广告:
c#
当前位置:首页 > 技术文档 > c# >  > 
vc++文件类型实别程序源码

受客户委托开发一种,可以识别文件类型的软件。

从网上找了一些资料,最后决定使用 TrID 编写一个VC++程序。

TrID这个文件分析库,现在可以识别多达3000种文件,而且分析的时候还会给出可能性

#include "tridlib.h"
#include "stdio.h"

int main(int argc, char*argv)
{
    int ret;
    trid trd("");
    trd.SubmitFileA("d:/temp/不怕不怕.mp3");
    ret = trd.Analyze();
    if(ret)
    {
        char buf[260];
        *buf = 0;
        ret = trd.GetInfo(TRID_GET_RES_NUM,0,buf);
        for(int i=0;i< = ret; i++)
        {
            trd.GetInfo(TRID_GET_RES_FILETYPE,i,buf);
            printf("File type: %s\n",buf);
            trd.GetInfo(TRID_GET_RES_FILEEXT,i,buf);;
            printf("File ext: .%s\n",buf);
            trd.GetInfo(TRID_GET_RES_POINTS,i,buf);
            printf("Matching points: %d\n\n",ret);
        }
    }


    else
        puts("analyze:(");
    return 0;
}

需要下载 TrIDDefs.TRD 和 TrIDLib.dll 放到 生成的exe同级目录下。

需要注意的是,我使用VS2010测试此程序,不能直接 F5 调试运行 ,那样不能识别文件,需要手动进入生成的debug目录下,双击运行即可。如果想双击后程序不关闭。可以加一句 system("pause"); 即可