【原创性声明】基本上是我平时编码时,通过MSDN,网络搜索等记录的一些技术性笔记。这些内容本质上没有我的原创性和创新性内容,但是因为很杂所以本身并不容易都能一一记住。在这里列出这些条目,已C++为主,没有什么中心思想,仅为备忘和查询使用。

    (1)检测合法输入的标准化写法(char*):

    char text[]; //待检测文本

    if( strlen ( text ) != desiredLength || strspn ( text, "1234567890") < desiredLength )

      return FALSE;

    其中,desiredLength 是输入内容的预期长度,"1234567890” 是合法字符集合。

    (2)strncpy ( char *dest, const char *source, size_t count ) 的特征:

    * 当 count <= strlen ( source ) 时不会在后面自动添加 null-terminator,仅执行拷贝字符动作。

    * 当 count > strlen ( source ) 时,会在后面补 0,直到拷贝到目标缓冲区的字符个数达到 count 为止。

    (3)alloca (size_t size) 用于在栈上分配空间(无须对应的释放函数)。

    (4)把制定进制表示的字符串转换成整数:strtol。

    (5)AdjustWindowRectEx 函数:根据客户区矩形测量出窗口矩形。

    提供一个客户区矩形,根据窗口样式和扩展样式,是否有菜单等信息,返回能容纳该客户区矩形的窗口矩形,此窗口矩形然后可以传递给 CreateWindowEx 函数。

    (6)如果在构造(析构)函数中调用虚函数,则调用的是自身类型定义的函数。(这句话表义不太精确,忘记我当初记的是什么含义)

    (7)MFC 获取时间跨度。

    CTime time1 ( 2008, 8, 8, 0, 0, 0 );

    CTime time2 = CTime :: GetCurrentTime ();

    CTimeSpan timespan = time2 - time1;

    CString strText;

    strText.Format ( _T ( " %d days %d hours " ), timespan.GetDays(), timespan.GetHours ( ) );

    (8)在对话框上添加蚀刻线:

    添加 Image 控件,把 Color 属性改为 Etched。

    调整ComboBox 下拉框高度: 选中 ComboBox, 点击下拉按钮,向下拉尺寸框。注意,如果是用 CreateWindow 函数创建的下拉框,指定的高度不应该是文本框高度,而是包含了文本框 + 下拉列表框的总高度。

    (9)FlashWindow / FlashWindowEx: 闪烁窗口和任务栏按钮。

    (10)MessageBeep ( MB_ICONEXCLAMATION ) :发出系统定义的警告声。

    (11)在用户界面上绘制标准控件(例如按钮,右下角的拖动三角形图案):DrawControlFrame。

    绘制三维外观的矩形边缘:DrawEdge;

    绘制焦点矩形:DrawFocusRect。

    (12)在 for 循环中如果用 break 结束循环,不会执行第三个分句。例如:

    for ( i = 0; i < 1000 ; i ++ ) break;

    printf ( " i = %d \n" , i ); //输出 i = 0;

    (13)struct 是一种成员函数默认为 public 的 class。

    (14)HRESULT CoFileTimeNow ( FILETIME * lpft ) : 当前时间作为 FILETIME 结构返回。

    (15)IActiveDesktop :: SetWallpaper : 设置桌面壁纸。

    (16)控制服务状态:ControlService。

    (17)_beginthread, _endthread 是 C 运行时库函数;

      CreateThread 是 WIN32 API。默认一个线程的栈为 1 MB。

      ExitThread 可以提供一个线程退出码,用 GetExitCodeThread 获取这个码。

    (18)EnumDesktops:枚举当前进程所在工作站的桌面。

    (19)SetProcessWindowStation:设置进程的窗口工作站。

    WindowStation 工作站包括以下资源:所有桌面,剪贴板,原子量(这是什么?)

    (20)SID:security identifier ,可变长度的一个结构体,用于唯一标识用户或组。

    Access Control: 权限控制 (winme,95,98不支持)。

    Securable Object:可以拥有一个安全描述符的对象。

    Security descriptor: 安全描述符,和一个 securable object 关联。

    Security descriptors:包括

      SIDs (主人,组),

      DACL:针对特定用户、组的权限(允许/拒绝)

      SACL:(这是什么?)

      一组控制位:指出其自身或成员含义。

    securable objects:包括所有命名的windows对象。一些未命名对象(例如进程,线程)。对于大多数对象,可以在创建他们的API中指定安全描述符,例如:文件,目录,命名/匿名管道,进程,线程,文件映射,access tokens,系统管理对象(工作站,桌面),注册表键,系统服务,网络共享,进程同步对象(events,mutexes,sepaphors,调度(job objects),目录服务对象。

    Access Token:包含一个登陆会话的权限信息。

    

    (21)获取系统信息(CPU个数,CPU类型):GetSystemInfo。

    (22)播放wav文件:PlaySound ( _T("....wav"), NULL, SND_FILETIME | SND_ASYNC );

    (23)创建快捷方式:SHCreateShortcutEx。

      IShellLink 接口:创建,修改,解析快捷方式。

    (24)获取特定文件夹路径:SHGetFolderPathAndSubDir。

    (25)MFC中测量字符串:CDC::GetOutputTextExtent。

    (26)重绘菜单:DrawMenuBar ( HWND )。

    (27)获取对话框字体大小:GetDialogBaseUnits。

    (28)让 ComboBox 实现自动完成(类似IE地址栏):SHAutoComplete (注意需要先调用COM初始化函数)
       HWND hComboBox = GetDlgItem(hDlg, IDC_COMBO_TEST);
       HWND hEdit = FindWindowEx(hComboBox, NULL, _T("Edit"), NULL);
       SHAutoComplete(hEdit, SHACF_DEFAULT | SHACF_FILESYSTEM) ;

    (29)关闭窗口时动画效果(例如渐隐):AnimateWindow。

    (30)比 CreateProcess 更简便的两个函数:WinExec, ShellExec。

    (31)添加,修改,删除托盘(Tray)图标:Shell_NotifyIcon。

    

    (未完待续)

    

【备忘录】技术笔记整理。相关推荐

  1. VLAN和trunking技术笔记整理

    VLAN和trunking技术简单整理 基于IOS,根据<cisco现场手册>整理   VLAN和trunking技术: 两种配置方式:1.vlan database进入vlan模式 2. ...

  2. 【Web】JavaWeb开发技术笔记整理

    动态网站和静态网站对比: 静态网站:内容是固定的,不能实现交互操作 动态网站:内容不是固定的,能够实现交互操作 B/S与C/S结构程序的对比: B/S:Brower浏览器/Server服务器 程序完全 ...

  3. Linux内核驱动调试,Linux内核设备驱动之内核的调试技术笔记整理

    /****************** * 内核的调试技术 ******************/ (1)内核源代码中的一些与调试相关的配置选项 内核的配置选项中包含了一些与内核调试相关的选项,都集中 ...

  4. 学习笔记整理:网络应用技术-运输层(3)

    以下内容为个人的学习笔记整理,如有错误,请指出,谢谢~ 一.课前预习 (1)TCP的确认机制中包不包含否认回复? 不包含. 接收方如果收到有差错的报文段就直接丢弃,不发生确认或否认信息:苏果接收方收到 ...

  5. 学习笔记整理:网络应用技术-实验-路由器交换机配置命令

    以下内容为个人的学习笔记整理,如有错误,请指出,谢谢~ 1.用命令的方式配置交换机或者路由器,共有四种命令模式:         ①用户模式②特权模式③全局配置模式④端口配置模式 2.路由器要配置Fa ...

  6. 学习笔记整理:网络应用技术-计算机网络概论

    以下内容为个人学习笔记整理,如有错误,请指出,谢谢~ 一.计算机网络 (1)定义:通过通信设备和必要的管理软件,将分布在不同地理位置上的能独立自主工作的计算机或类计算机连接起来,以实现资源共享的系统. ...

  7. 《繁凡的深度学习笔记》前言、目录大纲 一文让你完全弄懂深度学习所有基础(DL笔记整理系列)

    <繁凡的深度学习笔记>前言.目录大纲 (DL笔记整理系列) 一文弄懂深度学习所有基础 ! 3043331995@qq.com https://fanfansann.blog.csdn.ne ...

  8. Deep Learning(深度学习)学习笔记整理系列之(五)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

  9. Deep Learning(深度学习)学习笔记整理(二)

    本文整理了网上几位大牛的博客,详细地讲解了CNN的基础结构与核心思想,欢迎交流 [1]Deep learning简介 [2]Deep Learning训练过程 [3]Deep Learning模型之: ...

最新文章

  1. 【Git】将 GitHub 工程设置为私有库 ( 登录账号 | 工程主页 | Settings | Danger Zone | Change visibility | Make private )
  2. 微信小程序自定义授权弹框
  3. python创建变量_Python每天一分钟:给类对象动态新增/删除成员变量和方法(函数)...
  4. SyncNavigator数据库同步软件8.4.1 中文版
  5. 关于 mysql.test 数据库
  6. C#并行编程(6):线程同步面面观
  7. 68-Flutter中极光推送的使用
  8. 【POJ - 2019】Cornfields(二维st表,模板)
  9. Linux 设置环境变量导致bash:command not found
  10. 【优化算法】气味代理优化算法(SAO)【含Matlab源码 1131期】
  11. centos完全卸载mysql_centos下完全卸载mysql
  12. php 同比增长率上期未0,同比增长率计算时,上期值为0怎么计算?
  13. MQ,如何做到削峰填谷
  14. cad如何打开stp文件_用cad如何打开stp文件
  15. python与Geant4的socket通信
  16. [计算机视觉] AprilTag: A robust and flexible visual fiducial system(2011)论文理解
  17. 1. oralce数据库安装以及简单的SQL语句
  18. 纯真ip数据库 转mysql_如何把纯真ip数据库导入到MySQL数据表中
  19. win10安装mujoco
  20. maters鸿蒙系统,华为MateRS保时捷设计4月12日国内发布

热门文章

  1. date得到当前日期
  2. c#中设计器中窗体释放  protected override void Dispose(bool disposing)改写解决部分窗体线程释放不彻底问题
  3. c#解析json字符串处理清晰易懂的方法
  4. 指针类型和指针类型转换的理解
  5. C#获取本机IP地址字符串
  6. MFC窗口风格 WS_style/WS_EX_style
  7. 基础拾遗------泛型详解
  8. java 超时集合_确定性监视器脉冲/等待并在 生产环境 者 - 消费者集合中实现超时...
  9. python 变量类型注释_变量类型、命名规则及代码注释
  10. html下拉菜单jq怎么设置,jquery+css实现下拉列表功能