-
VC++6.0释放EXE资源文件
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;
}
- 2022-12-26 04:00:03下载
- 积分:1
-
vc.NET MFC开发完成的晚会随机抽奖程序
vc.NET MFC开发完成的晚会随机抽奖程序,这个程序作为抽签、抽奖程序都可以,程序中需要设置几个抽奖参数,然后运行抽奖程序即可。抽奖过程中,程序数字不停变化,形成了动态效果,停止程序后,会显示出抽出来的获奖名单。本抽奖程序可设置一次需要抽出几个幸运观众,最多可设置5名观从被抽出来。其它的参数主要是选择几名男观从和几保女观众的年龄段,在抽取之前你需要准备好这些待抽出的资料供程序读龋。
- 2022-04-23 23:00:47下载
- 积分:1
-
VC 6.0 在程序中使用Calendar月历控件
VC 6.0 在程序中使用月历控件,其实和日历插件差不多,核心是调用Windows系统的Calendar,做了些功能的自定义。
实现月历控件的部分设置代码:
m_MonthCalCtrl.SetColor(MCSC_TITLETEXT,RGB(0,128,128));//设置标题条上的文本颜色
m_MonthCalCtrl.SetColor(MCSC_TITLEBK,RGB(178,178,0));//设置标题条背景颜色
m_MonthCalCtrl.SetFirstDayOfWeek(0);//设置星期一为一周的开始
//设置日期
void CCalendarDlg::OnSetToday()
{
//更新变量
UpdateData(TRUE);
//构造日期变量
CTime tm(m_nYear,m_nMonth,m_nDay,0,0,0);
m_MonthCalCtrl.SetCurSel(tm);//设置当前日期
}
- 2023-08-04 01:15:03下载
- 积分:1
-
基于C++的打砖块游戏源码
基于C++的打砖块游戏源码,就是撞球游戏了,打乒乓球的,不过这个源代码基于C++ 实现,运行后会自动全屏,界面效果如截图所示,源代码是来自国外网站的,全部是英文注释,有兴趣的学习研究一下,游戏的操控效果还是很流畅的,值得学习。
- 2023-07-17 19:35:03下载
- 积分:1
-
VC串口调试、发送和接收消息范例
VC串口调试、发送和接收消息数据范例,这里面涉及到线程控制、串口调试、发送消息、接收消息等编写技巧,还有串口读和写操作,独占方式、延时发送消息,设置发送和接收缓冲区大小等,关于一些参数定义和接收数据函数的代码如下:
OVERLAPPED tOverLaped= {0}; //线程函数使用的OVERLAPPED结构
OVERLAPPED wOverLaped = {0}; //写操作使用的OVERLAPPED结构
OVERLAPPED rOverLaped = {0}; //读操作使用的OVERLAPPED结构
BOOL IsFun = TRUE; //线程是否运行
BOOL IsStop = FALSE; //数据是否发送完毕
//自定义消息处理函数,用于接收数据
void CSeriesPortDlg::OnRecieveData(WPARAM wParam, LPARAM lParam)
{
DWORD res,factbyte;
memset(DataBuffer,0,1024); //初始化数据缓冲区
COMSTAT rst;
ClearCommError(hCom,&res,&rst);//清空串口错误标志,记录当前通信状态
rOverLaped.hEvent = CreateEvent(NULL,TRUE,FALSE,NULL); //创建一个事件对象
if (ReadFile(hCom,DataBuffer,rst.cbInQue,&factbyte,&rOverLaped)) //读取数据到缓冲区中
{
DataBuffer[rst.cbInQue]= 0;
IsStop = FALSE;
}
else
{
res = WaitForSingleObject(rOverLaped.hEvent,5000);
}
IsStop = FALSE;
MessageBox(DataBuffer);
}
- 2023-05-17 19:05:03下载
- 积分:1
-
VC++ 6.0 弹球游戏&打砖块源代码
PenBall游戏源代码,VC++ 6.0 编写开发的弹球游戏&打砖块源代码,这个游戏的叫法很多了,有人叫做乒乓球游戏,有的叫“撞球游戏”,这里被称为弹球游戏和打砖块游戏,不管叫做么吧,大家一看到运行截图就明白了是什么游戏。这款撞球游戏分为三关,第三关是最难的,还有音效,操作挺方便,球拍自动跟随鼠标移动,运动自如。分享本源码主要是让大家参考一些从游戏中剥离出来的技巧,比如控制对象移动、碰撞检测反弹等,可用于其它的VC++开发项目中。
- 2022-08-13 12:20:23下载
- 积分:1
-
VC++ ChatRoom聊天室(客户端+服务端)
VC++ 聊天室(客户端+服务端),CS架构的ChatRoom聊天源码,服务端用来创建公共的聊天服务,比如创建用户列表、显示聊天消息、监控用户数量和在线人数;客户端是提供给用户使用的真正聊天程序,可完成大部分的聊天操作,比如发送聊天内容、选择私聊对象、查看聊天黑名单、设置加密传输消息、设置加密密钥、密文、选择发送表情、自定义昵称等功能。聊天窗口通过调主对话框的成员函数GetMessage来显示聊天信息,当用户数增加时,播放欢迎音乐,当用户数减少时播放离开音乐。
源代码部分,请参照源码目录中命名的文件夹,查看对应功能。
- 2022-03-02 10:15:20下载
- 积分:1
-
VC 随机数选号程序 源代码
VC 随机数选号程序 源代码,窗口中的每一个文本框对应一个随机数数组,当点击开始按钮后,这些数组各自为战,分别生成不同的随机数,当用户点击停止后,各个文本框中的随机数是不同的,由此可生成一个随机选号程序。
你可学习到生成随机数的线程、更新编辑框数字的线程、生成随机数、开始选号、更新按钮状态等相关的事件处理操作。
- 2022-03-12 18:31:14下载
- 积分:1
-
VC++ gethostbyname获取主机名和IP地址
VC++ 获取主机名和IP地址,也就是根据主机名获得IP地址,使用了gethostbyname函数,然后再使用addr.Format格式化获取到IP地址。具体来看以下代码获取到IP地址:
// 获得主机ip地址
struct hostent * phost;
phost = gethostbyname(szhostname);//根据主机名获得IP地址
m_strName=szhostname;
int h_length=4;
for( int j = 0; j {
CString addr;
if( j > 0 )
str += ".";
addr.Format("%u", (unsigned int)((unsigned char*)phost->h_addr_list[0])[j]);
str += addr;
}
m_strIP=str;
- 2022-11-09 11:50:03下载
- 积分:1
-
VC++基本鼠标操作——判断鼠标消息
VC++基本鼠标操作——判断鼠标消息,操作方法:按下鼠标左键,移动鼠标即可绘制椭圆,直至释放左键!
void CBaseMouseDemoView::OnMouseMove(UINT nFlags, CPoint point)
{
if(bDrag)
{
ptUp=point;//记录鼠标的当前位置
DrawCircle();//画新圆
}
CView::OnMouseMove(nFlags, point);
}
void CBaseMouseDemoView::DrawCircle()
{
Invalidate(false);
CClientDC dc(this);//获取DC
CRect rect;
GetClientRect(rect); //获取客户窗口区域
CBrush brush(RGB(255,255,255));
dc.FillRect(rect,&brush);//填充背景色为白色
dc.Ellipse(ptDown.x,ptDown.y,ptUp.x,ptUp.y);//绘制矩形
}
- 2022-03-19 16:04:24下载
- 积分:1