七月工作笔记 7.7 - 7.11



1. vs第二次单步调试崩溃。。


一開始不知道为什么,重装无数次。

后来发现是VAssistX 插件的问题。

。。

将下载下来的插件包中的VA_X.dll  复制到VAssistX 的安装路径下就可以。


2. 发现了一个非常棒的vs配色方案的站点   http://studiostyl.es/


3. sendmessage和postmessage的差别
PostMessage仅仅负责将消息放到消息队列中,不确定何时及是否处理
SendMessage要等到受到消息处理的返回码(DWord类型)后才继续
PostMessage运行后立即返回
SendMessage必须等到消息被处理后才会返回。


4. MakeLower()函数
像这样改变大写和小写的函数,除非一下子全然改变。否则现用现改,不要过早调用此类函数。


5. 消息中想要发送字符串,用以下方式
发送端:
CString relatedID = _T("123");
GetParent()->SendMessage(WM_MYHIDE,WPARAM(TRUE),(LPARAM)relatedID.GetBuffer(20));
reatedID.releaseBuffer();
在消息响应端:
void CDrawProgramDoc::SetYcProperty(WPARAM wParam)
{
 CString str((TCHAR*)lParam);
}


6. PostMessage和::PostMessage的差别


PostMessage的定义是这种:
_AFXWIN_INLINE BOOL CWnd::PostMessage(UINT message, WPARAM wParam, LPARAM lParam)
{ ASSERT(::IsWindow(m_hWnd)); return ::PostMessage(m_hWnd, message, wParam, lParam); }


所以在Release下。它和::PostMessage全然等价。所以能用PostMessage就不要用::PostMessage了,由于前者少一个參数,输入快。曾经我也有疑问,以为用PostMessage会损失效率。结果未必,MFC的东西并不总是慢。有些时候他们与API等价的快。


PostMessage:不须要指定接收消息的窗体,可是消息仅仅能发往本窗体
::PostMessage:须要指定接收消息的窗体,可是消息能够发往随意窗体


7. 模态对话框与非模态对话框的差别
一般来说,Windows应用程序中。对话框分为模态对话框和非模态对话框两种。二者的差别在于当对话框打开时,是否同意用户进行其它对象的操作。
模态对话框垄断了用户的输入。

当一个模态对话框打开时,用户仅仅能与该对话框进行交互,而其它用户界面对象收不到输入信息。模态对话框下。用户须要操作目标对话框就必须先操作模态对话框。

用户对模态对话框的处理如图所看到的。
模态对话框的处理过程
模态对话框的处理过程
非模态对话框(Nonmodal Dialogue Box。又叫做无模式对话框),与模态对话框不同。当用户打开非模态对话框时。依旧能够操作其它窗体。
建立模块对话框通常调用DoModal()这种方法,而非模态对话框则调用Create()和ShowWindow()这两个函数。




8.遇到一个奇妙错误。

。winocc.cpp 329行
错误本来是这种,有这么一段代码:
//消息函数
LRESULT CPESetToolDlg::OnSocketGetInstallList(WPARAM wParam, LPARAM lParam)
{
 //发消息给进度条,让他一下子跑完
 PostMessage(WM_PROGRESS_STEP_SEND, PROGESS_RANGE_NUM / 1, 0);
 //定义一个dlg
 CApkInstallDlg apkID;
 apkID.SetApkList((CSTRING_LIST*)wParam);
 //显示dlg
 return apkID.DoModal();
}
单步调试的时候发现。仅仅有在DoModal() 的时候才崩溃,接着调试发现不正确,是在消息函数中崩溃的。

后来发现,假设在PostMessage以下让他弹一个框就没问题。。只是还是不知道怎么解决这个问题,后来发现。是由于消息这个东西。在队列里面,运行顺序非常乱,不能用post,所以就改成了send,採用堵塞的方式,。。结果还是不行,后来发现,原来的send之后进入的消息函数里面还有个post。。我想了想。。仅仅好又重写了一个函数。。- -#。。

我发现如今我干的最多的事就是重写函数了。


另外有篇文章写得不错。能够看看:http://hi.baidu.com/vc_net/item/82e10f0c4a1e776dd55a113f





























转载于:https://www.cnblogs.com/liguangsunls/p/7079101.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/572279.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VMware安装虚拟机Mac版

VMware: 1、不需要分区或重开机就能再同一台PC上使用多种操作系统。 2、完全隔离并且保护不同操作系统的环境以及所有软件、资料。 3、不同的操作系统之间还能互动操作 4、有复原功能 5、能够设置并且随时修改操作系统的操作环境 下载地址:https://www.v…

Drupal 自己定义主题实体 Theming Custom Entities

在自己定义主题中输出结果时,有三个部分或很多其它特殊的函数。如 hook_menu,Page Callback。MODULE_theme 钩子 1、hook_menu 为了使用自己定义的实体。像创建、编辑、删除、查看实体的功能,就必须要创建一些 Menu path。这里创建、编辑、…

黑暗之魂3正在从服务器获取信息,黑暗之魂3如何解决入侵服务器问题 | 手游网游页游攻略大全...

发布时间:2016-01-04今天为大家带来的是黑暗之魂3法兰守卫入侵方法,一起来看看吧! 黑暗之魂3 法兰守卫入侵方法 法兰守卫怎么入侵 今天为大家带来的是黑暗之魂3法兰守卫入侵方法,一起来看看吧! 你的游戏可能被防火墙禁止了——解决方法:找到你的 ...标签&#xff1a…

Linux用户与用户组

Linux目录详解: 目录名说明/bin重要的二进制 (binary) 应用程序:包含二进制文件,系统的所有用户使用的命令都在这个目录下/boot启动 (boot) 配置文件:包含引导加载程序相关的文件,开机时用到的引导文件/data数据存储区…

数据库增添

条件查询用where 比如&#xff1a;查询Score表中成绩在60到80之间的所有记录。 select DEGREE from score where degree>60 and degree<80 模糊查询用% 比如查询与三相关的数据&#xff1a; where cno like 3% 3%是已三开头 %3%是中间带3 %3是末尾带3 排序查询 orde…

小程序怎样和服务器交互,微信小程序与 Django服务器 数据流 交互通信

Django服务器 解析小程序发送的json二进制字符串https://blog.csdn.net/qq_25068917/article/details/81041048http://www.cnblogs.com/Liang-jc/p/9326680.html小程序 解析Django服务器返回的json二进制字符串(字典)https://blog.csdn.net/qiushi_1990/article/details/759129…

Linux时间date与timedatectl

date&#xff1a; date是Linux里日期管理命令 UTC 协调世界时&#xff0c;又称世界统一时间、世界标准时间、国际协调时间。由于英文&#xff08;CUT&#xff09;和法文&#xff08;TUC&#xff09;的缩写不同&#xff0c;作为妥协&#xff0c;简称UTC GMT 即格林尼治 平太阳时…

2.apache模块mod_rpaf ,让nginx代理后端的apache获取访客真是IP

安装mod_rpaf这个模块 #wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz(下载不了就在百度上找相应的软件包下载) #tar xvfz mod_rpaf-0.6.tar.gz #cd mod_rpaf-0.6检查有没有httpd-devel这个工具包(如果没有就安装一下&#xff0c;有就直接执行…

Linux切换用户

显示目前用户的名称 logname切换用户 su 用户名当在权限不够的时候可以使用下面的命令执行&#xff0c;执行完会再自动切换到执行前的用户 su -c 要执行的命令 要切换的用户名 su -c ls root提高普通用户的操作权限,权限提升到了root sudo <参数> sudo ls sudo其它参…

oracle 之 基础操作

//删除存在的表空间及数据 drop tablespace TS_YYGL including contents and datafiles若是出现了提示 错误 导致无法全部删除&#xff0c;那么就执行以下语句可以得到那些表有主键相关&#xff0c;再执行就可以 select alter table ||owner||.||table_name|| drop constraint …

object类型转换为Array类型

var obj {a: 1, b: 2, c: 3}; // .... var arr []; for(var key in obj){ if(!obj.hasOwnProperty(key)){continue;}var item {}; item[key] obj[key]; arr.push(item); } console.log(arr); // [{a: 1}, {b: 2}, {c: 3}] // 将Object的属性输出成Array function objOf…

关机重启与who

关机&#xff1a; shutdown命令可以用来进行关闭系统&#xff0c;并且在关机以前传送讯息给所有使用者正在执行的程序&#xff0c;shutdown 也可以用来重开机使用者权限&#xff1a;管理员用户 关机语法 shutdown [-t seconds] [-rkhncfF] time [message]参数说明&#xff1a;…

webpack之font-awesome

1、安装font-awesome和font-awesome-loader及依赖 git&#xff1a;https://github.com/shakacode/font-awesome-loader npm install font-awesome-loader less less-loader css-loader style-loader file-loader font-awesome -save 2、配置webpack 官方给出的webpack2.0配置如…

目录命令及权限

目录命令及权限&#xff1a; 命令说明ls列出目录cd切换目录pwd显示目前的目录mkdir创建新目录rmdir删除一个空的目录cp复制文件或目录rm移除文件或目录mv移动文件与目录或修改文件与目录的名称 ls列出目录&#xff1a; ls # 显示不隐藏的文件和文件夹 ls -l # 显示不隐藏的…

【树莓派】【网摘】树莓派与XBMC及Kodi、LibreELEC插件(三)

之前的相关文章参考&#xff1a; 【树莓派】树莓派与XBMC及Kodi、LibreELEC插件&#xff08;一&#xff09; 【树莓派】树莓派与XBMC及Kodi、LibreELEC插件&#xff08;二&#xff09; 【树莓派】树莓派与XBMC及Kodi、LibreELEC插件&#xff08;三&#xff09; ---------------…

前端通信:ajax设计方案(五)--- 集成promise规范,更优雅的书写代码(改迭代已作废,移步迭代10)...

该迭代已作废&#xff0c;最新的请移步这里&#xff1a;https://www.cnblogs.com/GerryOfZhong/p/10726306.html 距离上一篇博客书写&#xff0c;又过去了大概几个月了&#xff0c;这段时间暂时离开了这个行业&#xff0c;让大脑休息一下。一个人旅行&#xff0c;一个人休息&am…

awk怎么用

AWK是一种处理文本文件的语言&#xff0c;是一个强大的文本分析工具。 之所以叫AWK是因为其取了三位创始人 Alfred Aho&#xff0c;Peter Weinberger, 和 Brian Kernighan 的 Family Name 的首字符。 语法如下 awk [选项参数] script varvalue file(s) 或 awk [选项参数] -f…

转盘抽奖

<!DOCTYPE html><html>  <head>   <meta charset"UTF-8">     <title></title>   <style>     .dialWrap { position:absolute; left:50%; top:24px; width:460px; height:460px; margin-left:-246px; } …

Linux软连接

软链接就理解为Windows的快捷方式&#xff0c;因为某些文件和目录的路径很深, 所以需要增加软链接(快捷方式)使用者权限&#xff1a;所有用户 语法&#xff1a; ln -s 目标文件绝对路径 快捷方式路径# 把b.txt的软连接生成到桌面 ln -s aaa/bb/c/b.txt b.txt

设计模式之 - 代理模式(Proxy Pattern)

代理模式&#xff1a;代理是一种常用的设计模式&#xff0c;其目的就是为其他对象提供一个代理以控制对某个对象的访问。代理类负责为委托类预处理消息&#xff0c;过滤消息并转发消息&#xff0c;以及进行消息被委托类执行后的后续处理。很多可以框架中都有用到&#xff0c;比…