Mfc 建立窗口线程
之前一直都是在学习C,但是没用MFC写过东西。所以这个算是MFC的一个处女作把。
今天硬着头皮写了个爆破工具,但是界面(edit控制)在显示的时候一下就被卡住了。
于是到处问人,后来有个不错的朋友帮我解决了,在此谢谢他。

没增加线程之前,老是会出现这样的问题,但是程序并不是死掉了,而是控件显示那儿给卡到了。
让哥们给加了一个线程函数,如下:
void CTestmfcDlg::OnBnClickedButton1()
{
GetDlgItemText(IDC_EDIT2,url);
GetDlgItemText(IDC_EDIT4,Urlpath);
AfxBeginThread(ThreadProc,this); //线程启用
} UINT __cdecl CTestmfcDlg::ThreadProc(LPVOID lpParameter) //线程函数,防止界面卡住
{
CTestmfcDlg *pTestDlg = (CTestmfcDlg*)lpParameter;
wchar_t Passfile[MAX_PATH] = {0};
wchar_t Target[MAX_PATH] = {0};
wchar_t targetpath[MAX_PATH] = {0}; if (lstrlen(pTestDlg->url) == 0)
{
//AfxMessageBox(L"Your Not Enter target url");
pTestDlg->printf_r(L"Please enter the target site.");
} if (lstrlen(pTestDlg->Urlpath) == 0)
{
//AfxMessageBox();
pTestDlg->printf_r(L"Please enter the site path");
} lstrcpy(Target,pTestDlg->url);
lstrcpy(targetpath,pTestDlg->Urlpath);
lstrcpy(Passfile,pTestDlg->FileName);
pTestDlg->Crack(Target,targetpath,Passfile);
return TRUE;
}
在此做个记录,以后碰到这个问题就有办法解决了。
Mfc 建立窗口线程的更多相关文章
- 深入浅出Win32多线程设计之MFC的多线程-线程与消息队列(经典)
1.创建和终止线程 在MFC程序中创建一个线程,宜调用AfxBeginThread函数.该函数因参数不同而具有两种重载版本,分别对应工作者线程和用户接口(UI)线程. 工作者线程 CWinThread ...
- MFC多线程各种线程用法 .
http://blog.csdn.net/qq61394323/article/details/9328301 一.问题的提出 编写一个耗时的单线程程序: 新建一个基于对话框的应用程序SingleTh ...
- MFC基础窗口创建,CWinApp、CFrameWnd
1.CWinApp(包括了这个类的导出类):代表了我们的程序.封装了消息循环等. 2.CFrameWnd:代表了程序的框架窗口.封装了窗口的注册.创建.显示.刷新.等等窗口操作. 3.Win32中.一 ...
- MFC 多线程及线程同步
一.MFC对多线程编程的支持 MFC中有两类线程,分别称之为工作者线程和用户界面线程.二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环. 工作者线程没有消息机制,通常 ...
- MFC 创建UI线程
对于windows来说,所有的线程都是一样的,但MFC却把线程区分为两种:用户界面(UI)线程和工作者线程.用户界面线程具有消息循环而工作者线程没有.UI线程可以创建窗口并给这些窗口发送消息,工作者线 ...
- SetTimer在无窗口和有窗口线程的使用 . .
今天犯了一个粗心的错误,在无窗口线程中,SetTimer中设置计时器ID,而WM_TIMER消息响应函数中得到的计时器ID却不是之前设置的计时器ID. 对应计时器ID的输出的是一个随机数字. 原来在m ...
- 在C#中子线程如何操作主窗口线程上的控件
在C#中子线程怎样操作主线程中窗口上控件 在C#中,直接在子线程中对窗口上的控件操作是会出现异常,这是因为子线程和运行窗口的线程是不同的空间,因此想要在子线程来操作窗口上的控件.是不可能简单的通过控件 ...
- MFC更换窗口图标
https://blog.csdn.net/deep_kang/article/details/72722692: MFC更换图标,图像默认为MFC,主要步骤有三步. 第一步 找到一张图片(坑点: ...
- 【转】VC 隐藏模块、MFC 改变窗口类名
[转]VC 隐藏模块 void HideDll() { HMODULE hMod = ::GetModuleHandle("MyHook.dll"); PLIST_ENTRY He ...
随机推荐
- iphone开发常用代码笔记
1.显示图像: 1 2 3 4 5 6 CGRect myImageRect = CGRectMake(0.0f, 0.0f, 320.0f, 109.0f); UIImageView *myImag ...
- 从网上搜索到的一些关于pcap源代码,入门级的
/*pcap_1.c*/ #include <stdio.h>#include <stdlib.h>#include <pcap.h> /* 如果没有pcap的系 ...
- EasyPlayer.js网页全终端播放器安装使用文档
EasyPlayer.js 集 rtmp, hls, flv, websocket 于一身的网页直播/点播播放器, 使用简单, 功能强大 属性(Property) video-url 视频流地址 St ...
- jQuery实现鼠标放到图片上,放大图片
<script src="../../Script/jquery-1.7.2.js" type="text/javascript"></scr ...
- spark2.0.2基于hadoop2.4搭建分布式集群
一.Scala安装 因为spark的版本原因,所以Scala我用的2.11.7. 下载目录http://www.scala-lang.org/download/ 拷贝到要安装的地址,我的地址是/usr ...
- js split 的用法和定义 js split分割字符串成数组的实例代码
关于js split的用法,我们经常用来将字符串分割为数组方便后续操作,今天写一段广告判断代码的时候,竟然忘了split的用法了,特整理下,方便需要的朋友, 关于js split的用法其它也不多说什么 ...
- 002-java反编译工具jd-gui
官网:https://github.com/java-decompiler 下载:https://github.com/java-decompiler/jd-gui/releases 使用: java ...
- 3.1 使用STC89C52控制MC20拨打电话
需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...
- 标准c数学函数使用方法
cppreference.com -> 标准c数学函数 -> 详解 标准c数学函数 abs 语法: #include <stdlib.h> int abs( int ...
- pyhon时间输出
参考博客:http://www.cnblogs.com/xisheng/p/7634125.html http://www.cnpythoner.com/post/89.html 有些时候想要输出,但 ...