-
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++ 使用IN引入子查询限定查询范围
VC++ 使用IN引入子查询限定查询范围的方法+源代码实例,用以查询在指定条件区间中的数据,比如具体到本例子中,查询收入在1000到3000之间的员工数据,用到了子查询的方法,通过本例子源码的学习,你可学习到VC++基本的数据库连接方法和in子查询的方法,当然子查询有些高级,本源码还算简单。
- 2022-10-30 06:05:03下载
- 积分:1
-
VC++ MDI多文档位图的复制和粘贴功能实现
多文档(MDI):实现在多个文档中位图的复制和粘贴操作,使用说明:打开一个图像,使用“编辑”菜单中的“复制”和“粘贴”对图像进行操作,清除剪切板的内容,拷贝DIB!
CMDICopyBitmapDoc* pDoc = GetDocument();
pDoc->ReplaceHDIB(hNewDIB); // 释放旧的DIB
pDoc->InitDIBData(); // 建立新的调色板及尺寸
pDoc->SetModifiedFlag(TRUE);
SetScrollSizes(MM_TEXT, pDoc->GetDocSize());
OnRealizePal((WPARAM)m_hWnd,0); // 实现新的调色板
pDoc->UpdateAllViews(NULL);
- 2022-01-25 22:15:31下载
- 积分:1
-
VC++6.0 在工具栏中图标下面显示文本
VC++6.0 在工具栏中图标下面显示文本,其实这个源码表达的功能,从事电脑的几乎每天都能看到,在Windows界面中,几乎每个图标都会有文字标签,本源码正是实现了在图标的下方添加文字标签,这样更人性化的指示出该图标的作用,本源码运行于VC6.0环境 ,编译运行后如下图所示的效果,面向VC初学者,这是个不错的基础范例。
- 2023-06-03 00:00:03下载
- 积分:1
-
vc++CThreadEx范例源码
vc++CThreadEx范例源码,创建两个线程分别显示不同的图片,形成交替显示的效果,演示了线程同步和异步,并涉及到定时器的使用。在交替显示图片时,每半秒触发定时器,演示了在一个周期内创建线程、启动线程、向工作线程发出退出命令、等待工作线程、销毁工作线程、主线程停止交替显示,i交替取值0和1、解除同步、检验是否有消息到达等各个环节的实现代码。
- 2022-03-03 18:54:02下载
- 积分:1
-
VC++ 6.0 实现选中项缩进的列表框
VC++ 6.0 实现选中项缩进的列表框,选中列表项后,该项缩进,文本显示为红色,自定义列表框控件,注意观察选中后的特性,重载控件的DrawItem函数。下面来看实现这一功能的代码段:
dc.Attach(lpDrawItemStruct->hDC);//获取列表框的DC
CRect rect(lpDrawItemStruct->rcItem);//获取列表框的矩形区域
COLORREF bk = dc.GetBkColor();//背景颜色
COLORREF fg = dc.GetTextColor();//系统文本颜色
if(lpDrawItemStruct->itemState & ODS_SELECTED)//该项被选中
{
bk = RGB(180,180,0 );//背景颜色
fg = RGB(255,0,0 );//红色文本
}
dc.SetTextColor(fg);
CBrush brush(bk);
dc.FillRect(&rect,&brush);
if (lpDrawItemStruct->itemState&ODS_SELECTED)
rect.left +=25;//缩进25个象素
int nBkMode = dc.SetBkMode( TRANSPARENT );
CString str;
GetText(lpDrawItemStruct->itemID,str) ;
dc.DrawText(str, &rect, DT_LEFT|DT_VCENTER);//显示文本
dc.SetTextColor(fg);
dc.SetBkMode( nBkMode );
dc.Detach() ;
- 2022-06-13 09:32:23下载
- 积分:1
-
VC++ Windows Shell扩展 上下文菜单扩展
VC++ Windows Shell扩展,设计 制作 上下文菜单扩展,响应右键消息菜单,当用户点击我们添加的菜单项时该方法将被调用。将生成的菜单插入到shell上下文菜单中,返回插入的菜单数,一定要返回正确,包括生成的父菜单也要计入总数,如果用户是在浏览器窗口中右击文本文件,或选中一个文本文件后单击文件菜单时,状态栏会显示提示帮助。。。。
- 2022-07-10 00:48:50下载
- 积分:1
-
VC++ ChatRoom聊天室(客户端+服务端)
VC++ 聊天室(客户端+服务端),CS架构的ChatRoom聊天源码,服务端用来创建公共的聊天服务,比如创建用户列表、显示聊天消息、监控用户数量和在线人数;客户端是提供给用户使用的真正聊天程序,可完成大部分的聊天操作,比如发送聊天内容、选择私聊对象、查看聊天黑名单、设置加密传输消息、设置加密密钥、密文、选择发送表情、自定义昵称等功能。聊天窗口通过调主对话框的成员函数GetMessage来显示聊天信息,当用户数增加时,播放欢迎音乐,当用户数减少时播放离开音乐。
源代码部分,请参照源码目录中命名的文件夹,查看对应功能。
- 2022-03-02 10:15:20下载
- 积分:1
-
VC++自定义鼠标击键(点击)的声音
VC++自定义鼠标击键声音,包括单击鼠标左键和右键的声音信息,一般情况下,Windows系统中有内置的声音,本程序是修改掉默认的单击声,改为自定义的,想熟悉修改过程的,可下载本源码参考。
运行本程序后,在窗口空白处单击鼠标左键或右键会出现与系统不一样的叮咚声音。
- 2022-03-25 07:58:00下载
- 积分:1
-
VC++ DAO 操作Access的测试例子
VC++ DAO 操作Access的测试例子,本演示是VC++使用DAO连接Access数据库的一个测试程序,学习如何使用DAO操作Access,通过添加一个数据库记录来演示添加、删除、插入数据的例子,比较简单,面向VC++初学者的一个例子。部分代码分享如下:
// 取得被选择记录的索引
nIndexInFieldList = m_listctrlInfo.GetNextSelectedItem(pos);
// 高亮被的选择记录
m_listctrlInfo.SetFocus();
// 从文件中把当前行记录删除
// 获取数据库文件
m_csDatebaseFile = GetDatabaseFile();
// 判断数据库是否已经打开
if (!m_bIsOpenDB)
{
db.Open(m_csDatebaseFile);
// 判断数据集是否已经打开
if (!m_bIsOpenDSN)
{
RecSet.Open(AFX_DAO_USE_DEFAULT_TYPE,"SELECT * FROM PositionTable",NULL);
}
}
m_nTotal = m_listctrlInfo.GetItemCount();
m_nCurrentIndex = ConvertIndex(nIndexInFieldList,m_nTotal - 1);
RecSet.MoveFirst();
RecSet.Move(long(m_nCurrentIndex));
RecSet.Delete();
ClearContent();
// 删除被的选择记录
m_listctrlInfo.DeleteItem( nIndexInFieldList );
// 显示删除数据成功的信息
GetDlgItem(IDC_STATIC_INFO)->SetWindowText(_T("删除数据成功!"));
// 再次取得第一条记录的位置
POSITION pos = m_listctrlInfo.GetFirstSelectedItemPosition();
UINT flag = LVIS_SELECTED|LVIS_FOCUSED;
- 2022-04-28 15:09:11下载
- 积分:1