-
VC6.0模拟实现模态对话框
VC++6.0模拟实现模态对话框,一般情况下的窗口都是基于此方式 ,当然也有非模态对话框,本款模态对话框,实现要点如下:
void MyDialog::OnButton1() //确定按钮
{
CDialog::OnOK();//调用OnOK()函数退出对话框
}
void MyDialog::OnButton2() //取消按钮
{
CDialog::OnCancel();//调用OnCancel()函数退出对话框
}
void MyDialog::OnButton3() //关闭按钮
{
int nRet = 5; // 自定义返回值
CDialog::EndDialog(nRet); // 调用EndDialog退出对话框
}
- 2022-05-27 01:17:22下载
- 积分:1
-
基于VC6的游戏内存修改器2源代码
VC6.0写一个简单的内存修改器,输出一个变量的值和地址实现原理:
BOOL ReadProcessMemory(
HANDLE hProcess,
LPCVOID lpBaseAddress,
LPVOID lpBuffer,
DWORD nSize,
LPDWORD lpNumberOfByteRead
);
WriteProcessMemory(hProcess,lpBaseAddress,lpBuffer,nSize,lpNumberOfByteRead);
编写测试程序
搜索内存
- 2022-01-25 22:26:20下载
- 积分:1
-
VC++ 设置位置断点跟踪程序
VC++ 设置位置断点跟踪程序,利用随机产生的数组来测试断点跟踪的效果,具体的实现代码:
srand( (unsigned)time( NULL ) );//产生随机种子
int array[number];
CString str1,str2;
str1="原始顺序:";
for(int i=0;i {
array[i]=rand();//设置条件断点
str2.Format("%d ",array[i]);
str1+=str2;
}
pDC->TextOut(20,10,str1);//输出原始数组顺序
BubbleSort(array, 1, number);
str1="排序顺序:";
for( i=0;i {
str2.Format("%d ",array[i]);
str1+=str2;
}
pDC->TextOut(20,30,str1);//输出排序后的数组顺序
- 2022-03-21 21:04:24下载
- 积分:1
-
VC++ 6.0 定制分割条(分隔条)的样式及大小
VC++ 6.0 定制分割条,也就是窗体的分隔条,将窗口分隔成若干个部分,用来显示不同的内容,该窗格视图为CStaticSplitWnd4View,该窗格大小不能通过拖动改变,不过我们可以通过菜单命令动态改变大小,窗格视图为CView2,该窗格大小不能通过拖动改变,窗格视图CView3和CView4都可以通过分隔条的拖动来改变视图大校
本示例中的分隔条经过了初级的美化,而且也向用户展示了,如何通过分割条来固定分栏窗格视图的大小,如何让分隔条不支持拖动等功能。
- 2023-08-22 18:20:04下载
- 积分:1
-
VC++ 使用互斥对象(Mutex)实现线程同步
VC++ 使用互斥对象(Mutex)实现线程同步,使用临界区对象实现读、写线程的同步,通过一个写线程和读线程的实例,来演示Mutex实现的线程同步功能。用完后销毁读线程,如下示:
CSingleLock singleLock(&mutex);
singleLock.Lock();
TerminateThread(g_ReadHnd, 0);//终止读线程
singleLock.Unlock();//释放资源
m_ReadEdit.SetWindowText("终止读线程");
GetDlgItem(IDC_STARR)->EnableWindow(true);//启动按钮生效
GetDlgItem(IDC_STOPR)->EnableWindow(false);//停止按钮无效
- 2022-04-11 14:27:41下载
- 积分:1
-
vc++ 弹窗拦截程序-阻止创建窗口源码
VC6.0阻止弹窗程序 弹窗免疫,阻止创建窗口,基于MFC实现,本弹窗拦截程序主要是根据窗口标题来阻止的,启动程序后在编缉控件中输入窗口标题,如果要输入多个就用空格或回车隔开,然后按开始就可以在以此为标题对话框在刚建立时就被自动关闭,就像没看到它们出现一样.
如果要阻止所有窗口,可以去Hook类中把 WM_INITDIALOG改为WM_CREATE就可以了.这个程序主要用于学习,并没有为实际使用而做过多改善。
- 2022-03-26 04:43:26下载
- 积分:1
-
VC++ 6.0 GetTickCount() 高精度计时功能的实现实例
本源码演示在VC++ 6.0环境下实现高精度计时功能,可在此基础上修改完善成一个毫秒级计时器。运行编译文件后,单击窗口中的按钮,即可激活计时功能,在弹出的窗口中显示计时时间,以毫秒计,请参见截图。计时部分的具体实现代码请参考以下代码:
void CDemoDlg::OnTest()
{
//开始时间
DWORD dwStart = GetTickCount();
for (int i = 0; i < 10000; i++)
{
for (int j = 0; j < 10000; j++)
{
}
}
//结束时间
DWORD dwStop = GetTickCount();
//时间间隔
DWORD dwElapse = dwStop - dwStart;
CString strText = _T("");
strText.Format(_T("时间间隔:%d毫秒"), dwElapse);
AfxMessageBox(strText);
}
- 2022-07-22 05:40:03下载
- 积分:1
-
VC 按1:1 按宽度和高度 平铺拉伸放大缩小图片
本程序为VC++缩放图片的小示例,可按宽度、高度、充满、居中显示等多种方式显示图片,具体来说可完成以下放大或缩小图片的功能:
//1:1比例,不放大也不缩小:
void CZoomImgDemoDlg::On11()
{
m_wndImage.SetStrechType(STRECH_1_1);
}
//按宽度放大:
void CZoomImgDemoDlg::OnFullX()
{
m_wndImage.SetStrechType(STRECH_FULL_X);
}
//按高度
void CZoomImgDemoDlg::OnFullY()
{
m_wndImage.SetStrechType(STRECH_FULL_Y);
}
//充满窗口
void CZoomImgDemoDlg::OnFull()
{
m_wndImage.SetStrechType(STRECH_FULL);
}
//居中显示,大小为窗口的一半
void CZoomImgDemoDlg::OnCenter()
{
m_wndImage.SetStrechType(STRECH_CENTER);
}
- 2022-01-28 02:37:20下载
- 积分:1
-
VC++ 实现定制打印页的页眉和页脚
VC++ 实现定制打印页的页眉和页脚,除了自定义打印页脚和页眉外,还可根据每页显示行数,设置打印页数,并且在需要时,屏蔽默认函数对OnDraw的调用。打印方面的定制,可参考以下代码:
void CMultiPrint2View::PrintHeader(CDC *pDC)//定制页眉
{
pDC->TextOut(0,0,"设置打印页眉和页脚测试:来首诗吧:再别康桥");
}
void CMultiPrint2View::PrintFooter(CDC *pDC)//定制页角
{
CMultiPrint2Doc* pDoc = GetDocument();//获取文档指针
ASSERT_VALID(pDoc);
CString str;
CPoint point(0,-1440*10-1000);
str.Format("当前文档:%s",(LPCSTR)pDoc->GetTitle());//获取当前文档名
pDC->TextOut(point.x,point.y,str);
str.Format("第%d页,共%d页",m_nPage,(pDoc->m_stringArray.GetUpperBound()/pDoc->m_LinePerPage+1));
CSize size=pDC->GetTextExtent(str);//获取输出文本宽度
point.x+=1440*6+1600-size.cx;
pDC->TextOut(point.x,point.y,str);
}完整的代码请下载源码吧。
- 2022-07-05 00:30:40下载
- 积分:1
-
VC++ MFC DLL的创建:显示问候语信息
VC++ MFC DLL的创建:显示问候语信息,运行效果如上图所示。
- 2022-05-21 08:12:16下载
- 积分:1