登录
首页 » VC++源码 » VC++6.0释放EXE资源文件

VC++6.0释放EXE资源文件

于 2022-12-26 发布 文件大小:148.16 kB
0 205
下载积分: 2 下载次数: 1

代码说明:

VC++6.0释放EXE资源文件,要释放的程序是一个简单的MessageBox,基于MFC对话框程序,先插入已经存EXE(或DLL)文件到VC资源文件中。   /* 函数说明:释放资源中某类型的文件   /* 参 数:新文件名、资源ID、资源类型   /* 返 回 值:成功返回TRUE,否则返回FALSE   BOOL CTestDlg::ReleaseRes(CString strFileName,WORD wResID,CString strFileType)   {    // 资源大小    DWORD dwWrite=0;    // 创建文件    HANDLE hFile = CreateFile(strFileName, GENERIC_WRITE,FILE_SHARE_WRITE,NULL,    CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);    if ( hFile == INVALID_HANDLE_VALUE )    {    return FALSE;    }    // 查找资源文件中、加载资源到内存、得到资源大小    HRSRC hrsc = FindResource(NULL, MAKEINTRESOURCE(wResID), strFileType);    HGLOBAL hG = LoadResource(NULL, hrsc);    DWORD dwSize = SizeofResource( NULL, hrsc);    // 写入文件    WriteFile(hFile,hG,dwSize,&dwWrite,NULL);    CloseHandle( hFile );    return TRUE;   }

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • 西工大C++ 毕设论文:折半查找法演示器
    西工大C++ 毕设论文:折半查找法演示器,里面包括了一个毕业论文的模板,本程序演示的功能是折半查找法,测试时请输入你想要查找数据的数据表列的数据个数(1--50),还需要输入你要在其中查找数据的数据表列(%d个数据 用空格间隔 大小排序不限),然后利用折半次数计数器和循环显示每次折半查找后的表列,输出此次折半后中间数据,引用putout函数,输出该次折半后数表,最后按照从小到大顺序输出表列。   在参数定义中:count为折半次数计数器,n为数表数据个数,num存储所查数据。   更多详细代码,请下载本源码包,可作为毕业设计论文的参考资料。
    2022-03-10 04:58:43下载
    积分:1
  • VC++ 创建MFC工作者线程,进行耗时计算
    VC++ 创建MFC工作者线程,进行耗时计算,时间显示为一个线程,另外用户可通过菜单中创建一个进度条演示的工作者线程,运行效果如图所示,创建工作者线程相关定义代码:   memset(&font,0,sizeof(LOGFONT));//为字体结构赋初值,默认值   font.lfHeight=30;//字体高度为50   font.lfWeight=600;   strcpy(font.lfFaceName,"Arial");   myfont.CreateFontIndirect(&font); //创建新字体   oldfont=dc.SelectObject(&myfont);//将新字体选入设备环境*/   CTime m_time;   m_time=CTime::GetCurrentTime();//获取当前时间日期   CString str=m_time.Format("当前时间:%H:%M:%S");//格式化   dc.TextOut(20,20,str);//显示时间   dc.SelectObject(oldfont);//恢复设备环境中的旧字体
    2022-02-11 23:05:26下载
    积分:1
  • VC++ .NET 实现窗口内控件自适应屏幕尺寸大小而变化
    VC++ .NET 实现窗口内控件自适应屏幕尺寸大小而变化,这个具体点就是,窗口中的边框和按钮等元素,会随着窗口的变大自动变大,并保持原有的比例,调用了CSelfResizeWindow::Rectify()来实现,我觉得是个很实用的窗体设计技巧。关于本源代码的几点说明:   自定义类CSelfResizeWindow实现窗口和控件的自适应,根据屏幕尺寸调整大校   使用步骤 :   1. 使需要自适应的窗口类继承于类CSelfResizeWindow,在OnInitDialog()中调用    __super::Init(this, 1, 3000);(其中1和3000是资源ID的范围,在Resource.h    中用宏定义的,Init函数的参数根据情况确定。)   2. 给窗口类添加OnSize()消息响应函数,在OnSize()函数    中调用__super::Rectify();即可。
    2023-01-25 01:40:04下载
    积分:1
  • VC++ 6.0 定时执行任务(关机、重启等)编写实例
    VC++ 6.0 定时执行任务编写实例,程序运行时显示托盘图标和右键菜单,请设置好时间和需要执行的外部文件路径及文件名,默认情况下是执行外部任务,可选择执行关机、重启、注销等任务,然后启动定时程序,在仅剩1分钟时,程序会显示自动重启警告:计算机将于1分钟内重启,是否取消重启?按"是"则取消自动重启.若允许自动关闭,请保存尚未关闭的程序!"。   本定时程序时间的设置可精确到日期、时间、秒,编写步骤:   ①设置任务执行的日期时间.   ②选择关机,注销,重启,任务模式.   ③选择了任务模式,需要设置任务路径.   ④按下"启动定时"按钮.   ⑤关机前1分钟不段提示是否关机或重启,如果用户一直未取消,电脑将于1分钟内关机或重启.有如下代码可参考:   if(shutTime < CTime::GetCurrentTime())   {    MessageBox("设置的时间不能早于当前系统时间!");   }   else   {    CString bb;    cButton->GetWindowText(bb);    if(bb == "启动定时")    {    if(radio == 1)    {    MessageBox("定时关机已启动!","定时关机已启动");    }    else if(radio == 2)    {    MessageBox("定时注销已启动!","定时注销已启动");    }    else if(radio == 3)    {    MessageBox("定时重启已启动!","定时重启已启动");    }else if(radio == 4)    {    CString command = "";    GetDlgItemText(IDC_EDIT2,command);    if(command == "")    {    MessageBox("请选择要执行的文件!");    return ;    }else    {    MessageBox("定时任务已启动!","定时任务已启动");    }    }    SetTimer(1,1000,0);    AfxGetApp()->m_pM
    2022-10-17 12:35:03下载
    积分:1
  • 华南理工大VC++ 实验报告:学生信息管理系统 附文档
    华南理工大软件学院2016级VC++ 实验报告:学生信息管理系统 附文档,这套系统的功能分为两部分,学生部分和教务管理员部分。包括系统功能模块划分;类体系设计,即主要数据和函数功能描述;界面设计等。   1)学生功能:查看信息:个人基本信息,课表,成绩表等内容    修改信息:可修改个人基本信息   2)教务员功能: 查看信息:学生个人基本信息、课表、成绩等内容   修改信息:学生个人基本信息、课表、成绩等内容   添加学生信息:学生个人基本信息后对同班级同年级的学生进行成绩表和课表的初始化   删除学生全部信息   展示同专业同年级学生的基本信息   对同专业同年级的学生的各科成绩进行排名   3)其他功能:分文件储存不同专业不同年级学生的信息资料,方便信息的处理   添加新年级和专业的数据并初始化   各模块说明:   1)基本信息类:个人基本信息,信息的生成和获取   2)学生信息类:继承于基本信息类,增加学生特有的信息,信息的生成和获取,
    2022-03-16 11:59:31下载
    积分:1
  • VC++ CFileException异常处理用法范例
    VC++ CFileException异常处理用法范例,   catch(CFileException* e)   {    switch(e->m_cause)    {    case CFileException::fileNotFound:    {    strMessage.Format("打开文件时发生异常(try/catch):    在指定位置没有找到文件%s ",strFile);    AfxMessageBox(strMessage);    TRACE("即将删除捕获到的异常对象CFileException::fileNotFound ");    AfxMessageBox("即将删除捕获到的异常对象CFileException::fileNotFound");    //删除异常对象    e->Delete();    TRACE("成功删除捕获到的异常对象CFileException::fileNotFound ");    AfxMessageBox("成功删除捕获到的异常对象CFileException::fileNotFound");    break;    }    case CFileException::invalidFile:    {    strMessage.Format("打开文件时发生异常(try/catch):    文件%无效 ",strFile);    AfxMessageBox(strMessage);    TRACE("即将删除捕获到的异常对象CFileException::invalidFile ");    AfxMessageBox("即将删除捕获到的异常对象CFileException::invalidFile");    //删除异常对象    e->Delete();    TRACE("成功删除捕获到的异常对象CFileException::invalidFile ");    AfxMessageBox("成功删除捕获到的异常对象CFileException::invalidFile");    break;    }    default:    break;    }   }
    2022-01-26 02:02:12下载
    积分:1
  • VC 使用加密狗进行身份验证
    VC 使用加密狗进行身份验证,一个加密范畴的例子,有兴趣的下载源码自行编译看效果,身份认证核心代码如下:   DogAddr = 10; //设置起始地址   DogBytes = 6; //设置数据的长度   DogData = m_Text.GetBuffer(6); //设置写入的数据   if (ReadDog()==0)   {    if (m_Text == m_Data)    MessageBox("身份验证成功");    else    MessageBox("身份验证失败");   }
    2022-02-10 11:47:15下载
    积分:1
  • VC++ SQL数据库提取器(备份、还原、分离数据库)
    VC++6.0编写的 SQL数据库提取器,本程序主要实现了备份和还原数据库、附加和分离数据库、提取数据表、导出数据、配置ODBC数据源等功能。   备份和还原数据库:在“选择数据库”下拉列表中选择要备份的数据库,单击工具栏中的备份数据库按钮,打开保存备份文件窗口,保存备份文件即可。还原数据库时,在“选择数据库”下拉列表中选择要还原的数据库,然后单击工具栏中的还原数据库按钮,选择备份文件,即可还原该数据库。   附加和分离数据库:单击附加数据库按钮,选择需要附加的数据库即可。   分离数据库时,在“选择数据库”下拉列表中选择要分离的数据库,然后单击分离数据库按钮即可。   提取数据表:选择要提取的数据库及相应的数据表,然后单击提取表结构按钮,打开“SQL提缺窗口,有两种提取方式,可以提取到Word或Excel中。   导出数据:选择要导出的数据表,单击“导出数据”按钮,打开“数据导出”窗口,有三种提取方式:导出到Word、导出到Excel、导出到文本,选择任意一种,单击“导出”按钮即可。
    2022-05-23 15:52:48下载
    积分:1
  • VC++ 6.0 OnCmdMsg消息处理和自定义消息对话框用法
    VC++ 6.0 消息处理和自定义消息对话框用法,通过重载函数OnCmdMsg从而使不能够处理主框架命令的非模式对话框,具备了响应主框架命令的功能。二是说明自定义消息的用法。重载OnCmdMsg后,改变的窗口标题,自定义消息参数:x=%d,y=%d"。
    2022-01-25 16:51:34下载
    积分:1
  • VC++ 获取主机名和IP地址及多线程运行示例
    VC++6.0获取主机名和IP地址,并演示多线程的运行示例,作者:fiwen。   获取IP地址是单击窗口右上角的“获缺按钮,即可显示主机名称和该机IP地址,多线程运行演示则打开后程序立即运行,左右两侧不同的线程,执行不同的任务,各自互不影响。   多线程演示部分,分别用了两个线程,每一个线程控制一个do while循环来运行,比如其中一个线程是这样写的:   CString str;   bool ReadData= TRUE;   int i=1;   do   {    //从1到99的平方    str.Format("%-3d的平方:%-5d",i,i*i);    pList->AddString(str);    Sleep(100);    i++;   }   while (ReadData=TRUE);   return 0;
    2022-01-20 22:35:47下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载