摘要:
打开一个文件 :ShellExecute(NULL, NULL, "c://mfc类库详解.chm", NULL, NULL, SW_SHOWNORMAL);打开一个文件夹: ShellExecute(NULL, NULL, "c://", NULL, NULL, SW_SHOWNORMAL);在资源管理器中打开:ShellExecute(NULL, "explore", "c://", NULL, NULL, SW_SHOWNORMAL);搜索一个文件夹 : ShellExecute(NULL, "fi 阅读全文
摘要:
首先让我们看一看刚入软件公司会出现的情况:1. 你可能会常常发现,写了一段代码后,编译程序时是一大堆的出错 (原因:语法不熟)──别担心,这是每个程序员必须经历的事,这时候你就需要更大的耐心及细心,对每一行代码进行仔细人阅读并改正,这个很重要,这可以培养你的理解代码能力,所以要常读程序,不要等到程序运行以后才知道你的程序的结果。──如何避免:在写代码以前,要认真的学习计算机语言的语法,如关键点,易错点,易忘点。同时要自已动手写自已的测试代码,而尽量不要抄别人的代码示例。即使抄,在学习阶段也尽量不要每一行一模一样的对着抄。而应对着代码示例写有所不同的例子。比如:在学java 知识点时,你最好建一 阅读全文
摘要:
(目前只能用在基于对话框的程序,SDI测试失败,待解决,在SDI中响应OnSize消息则可)1、最小化的原理:首先要将窗口隐藏,然后 在右下角绘制图标。2、恢复的原理:将窗口显示,再将托盘中的图片删除。(二)程序实现1、自定义消息WM_SHOWTASK: #define WM_SHOWTASK (WM_USER +1)2、在MFC的(的dlg类中)OnSysCommand(UINT nID, LPARAM lParam)函数体中增加一个命令响应 if(nID==SC_MINIMIZE) ToTray(); //最小化到托盘的函数3、在消息映射中添加 ON_MESSAGE(WM_SHOWTASK 阅读全文
摘要:
Dlg 是Dialog 的缩写,对话框App类就是这个SDI作为"程序"的入口有点像c的Main函数View是指编辑区里面的事就是那块白色的中间区域他负责绘制和乡音一些消息Doc就有点像数据库,他保存着编辑数据,用于view的Redraw的时候用,还有保存文件。反正动态的编辑数据都放在Doc里面。1) 在View中获得Doc指针 CYouSDIDoc *pDoc=GetDocument();一个视只能有一个文档。2) 在App中获得MainFrame指针 CWinApp 中的 m_pMainWnd变量就是MainFrame的指针 也可以:CMainFrame *pMain 阅读全文
摘要:
1、临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。 2、互斥量:为协调共同对一个共享资源的单独访问而设计的。 3、信号量:为控制一个具有有限数量用户资源而设计。 4、事 件: 用来通知线程有一些事件已发生,从而启动后继任务的开始。一,临界区(Critical Section): 保证在某一时刻只有一个线程能访问数据的简便办法。在任意时刻只允许一个线程对共享资源进行访问。如果有多个线程试图同时访问临界区,那么在有一个线程进入后其他所有试图访问此临界区的线程将被挂起,并一直持续到进入临界区的线程离开。临界区在被释放后,其他线程可以继续抢占,并以此达... 阅读全文
摘要:
Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。 Debug 和 Release 的真正秘密,在于一组编译选项。下面列出了分别针对二者的选项(当然除此之外还有其他一些,如/Fd /Fo,但区别并不重要,通常他们也不会引起 Release 版错误,在此不讨论) Debug 版本:/MDd /MLd 或 /MTd 使用 Debug runtime library(调试版本的运行时刻函数库)/Od 关闭优化开关/D "_DEBUG" 阅读全文
摘要:
游戏对战平台,在没有了解的情况下,总是给人一种很神秘的感觉,然而,当你对socket的理解到达一定程度之后,你就不会再觉得神秘。 用一句话来总结这种技术:虚拟局域网(VLAN)。 实现这种平台,主要是客户端,而客户端有很多种方法,就我所了解,可以用面三种方法实现: 1. 替换Windows socket DLL,然后,你想做什么就做什么吧。 2. 进程注入,HOOK WinSock函数调用。 3. 虚拟网卡驱动。 其实,前两种技术,也是许多木马使用的方法。正所谓技术是一面双刃剑,看你要用到什么地方了。现在的对战平台,就我了解,使用的是后两种方法。大多数是第2中----毕竟,驱动在有些用户权限下 阅读全文
摘要:
“全局”快捷键下列快捷组合键可用于集成开发环境 (IDE) 中的不同位置。命令名 快捷键 说明 编辑.复制 CTRL + CCTRL + INSERT 将当前选定的项复制到系统剪贴板。 编辑.剪切 CTRL + XSHIFT + DELETE 将当前选定的项移除到系统剪贴板。 编辑.循环应用剪贴板中的复制项 CTRL + SHIFT + INSCTRL + SHIFT + V 将项从“工具箱”的“剪贴板循环”选项卡粘贴在文件中的插入点,并自动选择粘贴的项。可通过重复按这些快捷键来查看剪贴板上的每个项。 编辑.转到下一个位置 F8 将光标移动到下一项,如“任务列表”窗口中的任务或“查找结果”窗口 阅读全文
摘要:
客户区和非客户区指的什么?窗口客户区和视图客户区的区别! 1,什么是客户区/非客户区? 2, 窗口(框架/frame)的客户区和视图(view)的客户区的区别?这些都是初学者很容易迷惑的地方,我也是很迷惑,不过经过一番折腾终于弄明白这些问题了.对于这些问题,我想只用两个图片来说明最直观!如下:1,在一个MDI(多文档)应用程序中每个概念如下图所标示:效果如下图1,窗口框架的客户区就是指图中的灰色部分:即蓝色方框内区域,框架的非客户区就是指蓝色方框之外的窗口区域,包括程序图标,标题栏,菜单,最大最小/关闭按纽,左右两个框和底下的状态条.2,视图的客户区就是指图中绿色部分:即红色方框内的区域,视图 阅读全文
摘要:
没有人会反对工作是为了赚取报酬,但是曾几何时,谈薪水却变成工作里最难开口的一件事。你心里是否也曾有过这样的困惑:“按公司规定”难道真是唯一的标准答案吗? 有一个趣的调查。875位接受调查的人力资源主管中,60%表示会在面谈时对薪水保留一些弹性,只有30%说绝对不能调整,其余10%要视对方的态度而定。另外一个调查则发现,高达80%的人力资源主管是愿意跟面试对象好好沟通薪水的。他们甚至并不排斥要进行一点“谈判”。 勇于对薪水发出声音 俗话说,“会吵的人有糖吃”,在谈薪水这件事,不能说是100%对,但对你的薪水发出声音,我认为是正面的,至少你的主管会多纳进一个考虑的因素。 当企业与员工的关... 阅读全文