自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (24)
  • 收藏
  • 关注

转载 VC解析XML--使用CMarkup类解析XML

        经过今天尝试MFC解析XML串,也算有了不少收获,总结一下。         我是使用的CMarkup类对XML进行操作。                  CMarkup好象都是先从一个xml文件里面把内容读出来,再进行解析,搞得我恨不得要把我的CString写到xml文件里面再取出来了。         但是后来想想,做人不能这么懒,稍微改动了一下,就能够解析CString串了

2008-12-31 11:34:00 707

转载 关于VC解析XML的高速类CMarkup

CMarkupRelease 9.0, April 1, 2007Terms: CMarkup Evaluation License AgreementDownload: Markup90.zip 449k release notesCreate new XML documents; parse and modify existing XML documents. All from t

2008-12-31 11:30:00 2020

转载 C++基础:Debug与Release版本的区别

说到这个问题,先得说说VC对Debug和Release的定义。  实际上,Debug和Release只是VC对编译选项的预定义而已,如果我们愿意,我们完全可以把Debug和Release的行为完全颠倒过来。  当然,我们也可以自己定义一组编译选项,然后命名为ABC,DEF等。当然,在习惯上,我们仍然更愿意使用VC已经定义好的名称。  既然Debug和Release仅仅是编译选项的不同,那么为什么要

2008-12-30 11:16:00 814

转载 vc多线程的一个程序

#include #include DWORD WINAPI Fun1Proc(LPVOID lpParameter); //声明线程函数1 int tickets=100; //初始化车票的数量 HANDLE hMutex; //定义线程互斥对象 void main() { HANDLE hThread1; //定义线程hThread1 hThread1=CreateThread(NULL,0,

2008-12-23 09:51:00 448

转载 VC多线程编程(转)

VC中多线程使用比较广泛而且实用,在网上看到的教程.感觉写的挺好. 一、问题的提出编写一个耗时的单线程程序:  新建一个基于对话框的应用程序SingleThread,在主对话框IDD_SINGLETHREAD_DIALOG添加一个按钮,ID为IDC_SLEEP_SIX_SECOND,标题为“延时6秒”,添加按钮的响应函数,代码如下: void CSingleThreadDlg:

2008-12-23 09:48:00 457

转载 VC——线程同步

什么是同步:“同步”不是指平常所说的两件事情同时进行。它的目的是使多个线程之间协调工作,而且常常是避免两个线程同时进行某些操作,比如同时访问同一个共享资源。一般来说,同步是通过暂时将会发生冲突操作的某个线程暂停执行(称为阻塞线程),然后等待不会冲突时再继续执行。 需要同步的情况:1、多个线程同时访问同一对象时MFC对象在对象级不是线程安全的,只有在类级才是。如:两个线程可以安全

2008-12-23 09:47:00 1295 1

转载 深入剖析WTL—WTL框架窗口分析 (2)

ATL对窗口消息处理函数的封装 在本节开始部分谈到的封装窗口的两个难题,其中第一个问题是怎样解决将窗口函数的消息转发到HWND相对应的类的实例中的相应函数。 下面我们来看一下,ATL采用的是什么办法来实现的。 我们知道每个Windows的窗口类都有一个窗口函数。 LRESULT WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM

2008-12-19 17:35:00 659

转载 深入剖析WTL—WTL框架窗口分析 (1)

WTL的基础是ATL。WTL的框架窗口是ATL窗口类的继承。因此,先介绍一下ATL对Windows窗口的封装。 由第一部分介绍的Windows应用程序可以知道创建窗口和窗口工作的逻辑是: 1 注册一个窗口类 2 创建该类窗口 3 显示和激活该窗口 4 窗口的消息处理逻辑在窗口函数中。该函数在注册窗口类时指定。 从上面的逻辑可以看出,要封装窗口主要需解决怎样封装窗口消息处理机

2008-12-19 17:30:00 634

转载 VC++实现位图显示透明效果

我们在进行程序的界面设计时,常常希望将位图的关键部分,也既是图像的前景显示在界面上,而将位图的背景隐藏起来,将位图与界面很自然的融合在一起,本文介绍了透明位图的制作知识,并将透明位图在一个对话框中显示了出来。本文所使用的原始位图及程序编译运行后的界面效果如下图所示:图一、原始位图图二、对话框界面上透明显示位图  一、实现方法  绘制"透明"位图是指绘制某一位图中除指定颜色外

2008-12-19 10:19:00 1286

转载 BitBlt()双缓冲解决图象闪烁

显示图形如何避免闪烁,如何提高显示效率是问得比较多的问题。而且多数人认为MFC的绘图函数效率很低,总是想寻求其它的解决方案。MFC的绘图效率的确不高但也不差,而且它的绘图函数使用非常简单,只要使用方法得当,再加上一些技巧,用MFC可以得到效率很高的绘图程序。我想就我长期(呵呵当然也只有2年多)使用MFC绘图的经验谈谈我的一些观点。1、显示的图形为什么会闪烁?   我们的绘图过程大多放在OnDraw

2008-12-19 09:59:00 970

转载 如何為你的 firefox plugin 加上新的 method

  如果我想在 plugin 裡新增一個 method, 那該怎麼做?ex:      新增一個 method name= MYfunction 這篇文章內容包含      1. Java Script 呼叫 npapi plugin 物件的最簡單設定      2. 如何讀取 Java Script 傳來的參數      3. 如何轉換 utf8 字串到 Wind

2008-12-10 10:35:00 937

转载 [Plugin] 50字內建立Firefox plugin 安裝檔 xpi

  好! 我承認這份文章超過 50 個字, 可是如何建立 Firefox plugin 自動安裝檔的觀念實在很簡單, 所以我們就開始上菜了.如果你閱讀過[Plugin] 撰寫 firefox plugin 最簡單方法那你應該會想知道網路上, 那些傢伙是怎麼讓他的 plugins 自動地安裝的?我現在教你.Step 1: 先把你那一堆 dll (包含 np開頭的 dl

2008-12-10 10:29:00 1760 1

转载 我的Firefox插件开发之旅(8)——插件的安装与更新

  插件写好了,下面就该做一个安装包了。最好再提供更新功能,以便在插件有更新的时候,及时通知用户进行插件更新。我们开发的时候,直接将生成的dll丢到Firefox安装目录下的plugins目录就可以工作了,但是你如何说服让用户来手动完成这件事情?估计很难。因此,提供一个安装包,可能是最好的选择。用户只需要点几下鼠标就可以完成插件的安装了。不过到写这篇文章的时候,我还不清楚怎么让安装包经

2008-12-10 09:25:00 1129

转载 我的Firefox插件开发之旅(7)——为插件添加和脚本交互的能力

  先说一句题外话,上一节一开始我提到了由于.rc导致我自己写的插件不能被FF识别的问题,今天终于找到答案了。在这篇文章中:https://developer.mozilla.org/en/Gecko_Plugin_API_Reference/Plug-in_Development_Overview,有这么一段话:In your development environment, make

2008-12-10 09:24:00 1788 1

转载 我的Firefox插件开发之旅(5)——编译和测试第一个Plugin例子:npruntime

  前几天一直在忙乎着研究和阅读XUL和FF的Extension相关资料,今天突然发现,我要做得事情似乎不是用Extension来实现的。因为原来的应用是一个ActiveX,网页会将一些参数通过ActiveX控件传递进来,而ActiveX接到这些参数以后,会和服务器进行一些数据交互,最后调起本地的执行程序。似乎我走了一些弯路,方向不对。我要做得事情应该是编写一个Plugin,而非Extensi

2008-12-10 09:23:00 4175 3

转载 我的Firefox插件开发之旅(6)——FF插件的一些基础知识

  上篇文章学习了npruntime的例子程序,接下来迫不及待地想实现自己的一个插件了。我决定使用VS 2005来做。新建了一个名为npgnet的工程,按照npruntime例子,新建了np_entry.cpp、npn_gate.cpp、npp_gate.cpp、npgnet.def四个文件,然后新建了一个类CGnetFFPlugin,并且把例子中的关键代码添加了进来(我删除了一些cplu

2008-12-10 09:23:00 2232 1

转载 我的Firefox插件开发之旅(4)——XULRunner的一个例子

  上一节写了一个Extension,添加了一个按钮在FF3的工具栏上。接下来我准备在这个基础上添加一个功能,点击按钮,读取本地磁盘上一个文件的内容,并显示出来。怎么做呢?用Javascript吗?因为我最终的目标是从服务器上下载文件,也可能会传输本地文件到服务器上,用Javascript访问本地文件有诸多限制,而且也无法完成复杂的功能。所以最好是能够调用我编写的 DLL那就最好不过了。怎么做

2008-12-10 09:22:00 2284

转载 我的Firefox插件开发之旅(3)——我的第一个扩展

  简单知道了XUL,迫不及待地想立即编写一个插件,哪怕什么事情都不做也好。O(∩_∩)O通过这个页面https://developer.mozilla.org/en/Building_an_Extension,可以找到编写一个插件必须要做得一些事情,写的很清楚。最后产生的目录和文件结构是这个样子:install.rdfchrome.manifestchrome  |--content  

2008-12-10 09:21:00 1380 2

转载 我的Firefox插件开发之旅(2)——XUL是什么?

 What is XUL?这个页面给出了详细的介绍:http://www.xulplanet.com/tutorials/whyxul.html。看完后,了解了XUL原来是一个支持多种WEB技术的、基于XML的界面开发语言。它既可以在远程执行,也可以安装到本地执行。在XUL中内置了很多界面元素,如菜单、按钮、分页等等,这样就不需要自己编写很多JS来维护和控制很多界面元素了。而且,这

2008-12-10 09:20:00 953

转载 我的Firefox插件开发之旅(1)——从零开始

 准备做一个Firefox插件,用来接收从WEB页面传递的参数,根据这些参数从服务器上下载一些文件到本地,并调起本地的一个应用程序。以前在IE中是使用一个ActiveX来实现的。FF的插件从来没有做过,不知道将来会遇到多少困难。 在网上发现一个页面:http://ted.mielczarek.org/code/mozilla/extensionwiz/,它提供了一个FF扩展的生

2008-12-10 09:18:00 1150

SFTP 协议 2013V0.3版本

SFTP协议文档

2022-10-08

Oran V0.8规范文档

Oran V0.8规范文档 O-RAN-WG4.CUS.0-v08.00.pdf O-RAN.WG4.CONF.0-v05.00.pdf O-RAN-WG4.MP.0-v08.00.pdf O-RAN.WG4.MP-YANGs-v08.00.zip

2022-04-12

confd-basic-7.6.linux.x86_64

1. 解压 sh confd-basic-7.6.linux.x86_64.installer.bin /home/tmpconfd 2. 编译crypto.so 修改 confd-basic-7.6.linux.x86_64/confd-basic-7.6/libconfd/src/include.mk cd confd-basic-7.6.linux.x86_64/confd-basic-7.6/libconfd/crypto make #生成基于libcrypto.so.1.0版本的crypto.so cp confd-basic-7.6.linux.x86_64/confd-basic-7.6/libconfd/crypto/crypto.so /home/tmpconfd/lib/confd/lib/core/crypto/priv/lib/crypto.so 拷贝编译好的libcrypto.so.1.0.0 到 /usr/lib64/libcrypto.so.1.0.0

2022-03-31

yencap and yencap-manager

yencap

2022-03-31

IEEE-802.11i

Guide to IEEE 802.11i - Establishing Robust Security Networks.pdf S10_802.11i Overview-jw1.pdf IEEE-802.11i-re.pdf ieee 802.1X.pdf

2014-12-24

ipv6相关文档

IPv6 Introduction and Configuration.pdf IPv6+Core+Protocols+Implementation.pdf Morgan.Kaufmann.IPv6.Advanced.Protocols.Implementation.pdf Running.IPv6.2006.pdf 《IPV6详解》下一代互联网络协议.pdf

2014-12-24

Tuning Red Hat Enterprise Linux

Tuning Red Hat Enterprise Linux linux服务器调优

2014-12-24

IETF Protected EAP Protocol

Protected EAP Protocol (PEAP) Version 2.txt

2014-11-05

Ethernet vendor codes and well-known MAC addresses

# The IEEE public OUI listing available from: # # # # # Michael Patton's "Ethernet Codes Master Page" available from: # # # This is Wireshark 'manuf' file, which started out as a subset of Michael # Patton's list and grew from there.

2014-11-05

C++ Hackers Guide.pdf

C++ Hackers Guide.pdf Table of Contents Real World Hacks................................................................................................9 Hack 1: Make Code Disappear..........................................................................10 Hack 2: Let Someone Else Write It...................................................................12 Hack 3: Use the const Keyword Frequently For Maximum Protection.............12 Hack 4: Turn large parameter lists into structures..........................................14 Hack 5: Defining Bits.........................................................................................16 Hack 6: Use Bit fields Carefully........................................................................18 Hack 7: Documenting bitmapped variables......................................................19 Hack 8: Creating a class which can not be copied............................................21 Hack 9: Creating Self-registering Classes.........................................................22 Hack 10: Decouple the Interface and the Implementation...............................25 Hack 11: Learning From The Linux Kernel List Functions...............................27 Hack 12: Eliminate Side Effects........................................................................29 Hack 13: Don't Put Assignment Statements Inside Any Other Statements......30 Hack 14: Use const Instead of #define When Possible.....................................31 Hack 15: If You Must Use #define Put Parenthesis Around The Value.............32 Hack 16: Use inline Functions Instead of Parameterized Macros Whenever Possible........................................................................................................33 Hack 17: If You Must Use Parameterized Macros Put Parenthesis Around The arguments....................................................................................................34 Hack 18: Don't Write Ambiguous Code.............................................................34 Hack 19: Don't Be Clever With the Precedence Rules......................................35 Hack 20: Include Your Own Header File...........................................................36 Hack 21: Synchronize Header and Code File Names.......................................37 Hack 22: Never Trust User Input......................................................................38 Hack 23: Don't use gets.....................................................................................40 Hack 24: Flush Debugging................................................................................41 Hack 25: Protect array accesses with assert....................................................42 Hack 26: Use a Template to Create Safe Arrays...............................................45 Hack 27: When Doing Nothing, Be Obvious About It........................................46 Hack 28: End Every Case with break or /* Fall Through */...............................47 Hack 29: A Simple assert Statements For Impossible Conditions....................47 Hack 30: Always Check for The Impossible Cases In switches.........................48 Hack 31: Create Opaque Types (Handles) Which can be Checked at Compile Time.............................................................................................................49 Hack 32: Using sizeof When Zeroing Out Arrays..............................................51 Hack 33: Use sizeof(var) Instead of sizeof(type) in memset Calls....................51 Hack 34: Zero Out Pointers to Avoid Reuse......................................................53 Hack 35: Use strncpy Instead of strcpy To Avoid Buffer Overflows.................54 Hack 36: Use strncat instead of strcat for safety..............................................55 ...... ......

2010-12-10

ebtables-iptables interaction on a Linux-based bridge.mht

ebtables-iptables interaction on a Linux-based bridge.mht

2010-12-10

ebtables-v2.0.9-2.tar.gz

ebtables-v2.0.9-2.tar.gz from http://ebtables.sourceforge.net

2010-12-10

Advanced Bash-Scripting Guide

Advanced Bash-Scripting Guide.pdf

2010-12-06

Traffic-Control-HOWTO.pdf

Traffic-Control-HOWTO.pdf

2010-12-06

Bash-Prompt-HOWTO

Bash-Prompt-HOWTO.pdf

2010-12-06

Linux Advanced Routing and Traffic Control HOWTO en

英文版 参考http://lartc.org/

2010-12-02

Linux Andvanced Routing and Traffic Control

Linux高级路由和流量控制howto 经典流量控制之作,不用多说

2010-12-02

WLAN基础知识 WLAN基础知识

WLAN基础知识 802.11协议族 WLAN设备 WLAN的典型部署

2010-06-29

Linux Routing.chm

Linux Routing.chm 学习Linux路由

2009-03-18

Advanced Linux Networking

Advanced Linux Networking.chm

2009-03-18

Advanced Linux Programming

Advanced Linux Programming

2009-03-18

深入浅出MFC.pdf

深入浅出MFC(第二版) 目录 第0章 你一定要知道(导读) 这本书适合谁 你需要什么技术基础 你需要什么软硬件环境 让我们使用同一种语言 本书符号习惯 本书例程的取得 范例程序说明 与前版本之差异 如何联络作者 第一篇 勿在浮砂筑高台 第1章 Win32程序基本概念 Win32程序开发流程 需要什么函数库(.LIB) 需要什么头文件(.H) 以消息为基础,以事件驱动之(message based,event driven) 一个具体而微的Win32程序 程序进入点WinMain 窗口类之注册与窗口之诞生 消息循环 窗口的生命中枢:窗口函数 消息映射(Message Map)的雏形 对话框的运行 模块定义文件(.DEF) 资源描述档(.RC) Widnows程序的生与死 空闲时间的处理:OnIdle Console程序 Console程序与DOS程序的差别 Console程序的编译链接 JBACKUP:Win32 Console程序设计 MFCCON:MFC Console程序设计 行程与线程(Process and Thread) 核心对象 一个行程的诞生与死亡 产生子行程 一个线程的诞生与死亡 以_beginthreadex取代CreateThread 线程优先级(Priority) 多线程程序设计实例 第2章 C++的重要性质 类及其成员——谈封装(encapsulation) 基类与派生类:谈继承(Inheritance) this指针 虚拟函数与多态(Polymorphism) 类与对象大解剖 Object slicing与虚拟函数 静态成员(变量与函数) C++程序的生与死:兼谈构造函数与解构函数 四种不同的对象生存方式(in stack、in heap、global、local static) 执行期类型信息(RTTI) 动态生成(Dynamic Creation) 异常处理(Exception Handling) Template Template Functions Template Classes Template的编译与链接 第3章 MFC六大关键技术之仿真 MFC类层次结构 Frame 1范例程序 MFC程序的初始化过程 Frame 2范例程序 RTTI(执行期类型识别) 类别型录网与CRuntimeClass DECLARE_DYNAMIC/IMPLEMENT_DYNAMIC宏 Frame 3范例程序 IsKindOf(类型识别) Frame 4范例程序 Dynamic Creation(动态生成) DECLARE_DYNCREATE/IMPLEMENT_DYNCREATE宏 Frame 6范例程序 Persistence(永久保存)机制 Serialize(数据读写) DECLARE_SERIAL/IMPLEMENT_SERIAL宏 没有范例程序 Message Mapping(消息映射) Frame 7范例程序 Command Routing(命令传递) Frame 8范例程序 本章回顾 第二篇 欲善工事先利其器 第4章 Visual C++集成开发环境 安装与组成 四个重要的工具 内务府总管:Visual C++集成开发环境 关于project 关于工具设定 Source Browser Online Help 调试工具 VC++调试器 Exception Handling 程序代码产生器:AppWizard 东圈西点完成MFC程序骨干 威力强大的资源编辑器 Icon编辑器 Cursor编辑器 Bitmap编辑器 工具栏(Toolbar)编辑器 VERSIONINFO资源编辑器 字符串表格(Accelerator)编辑器 菜单(Menu)编辑器 加速键(Accelerator)编辑器 对话框(Dialog)编辑器 Console程序的项目管理 第三篇 浅出MFC程序设计 第5章 总观Application Framework 什么是Application Framework? 侯捷怎么说 我怎么说 别人怎么说 为什么使用Application Framework Microsoft Foundation Classes(MFC) 白头宫女话天宝:Visual C++与MFC 纵览MFC General Purpose classes CObject 数据处理类(collection classes) 杂项类 异常处理类(exception handling classes) Windows API classes Application framework classes High level Abstractions Afx全局函数 MFC宏(macros) MFC数据类型(data types) 第6章 MFC程序的生死因果 不二法门:熟记MFC类的层次结构 需要什么函数库? 需要什么头文件? 简化的MFC程序结构——以Hello MFC为例 Hello程序程序代码 MFC程序的来龙去脉(causal relations) 我只借用两个类:CWinApp和CFrameWnd CWinApp——取代WinMain的地位 CFrameWnd——取代WndProc的地位 引爆器——Application object 隐晦不明的WinMain AfxWinInit——AFX内部初始化操作 CWinApp::InitApplication CMyWinApp::InitInstance CFrameWnd::Create产生主窗口(并先注册窗口类) 奇怪的窗口类名称Afx:b:14ae:6:3e8f 窗口显示与更新 CWinApp::Run——程序生命的活水源头 把消息与处理函数连接在一起:Message Map机制 来龙去脉总整理 Callback函数 空闲时间(idle time)的处理:OnIdle Dialog与Control 通用对话框(Common Dialogs) 本章回顾 第7章 简单而完整:MFC骨干程序 不二法门:熟记MFC类层次结构 MFC程序的UI新风貌 Document/View支撑你的应用程序 利用Visual C++工具完成Scribble step0 骨干程序使用哪些MFC类? Document Template的意义 Scribble的Document/View设计 主窗口的诞生 工具栏和状态栏的诞生(Toolbar&Status bar) 鼠标拖放(Drag and Drop) 消息映射(Message Map) 标准菜单File/Edit/View/Window/Help 对话框 改用CEditView 第四篇 深入MFC程序设计 第8章 Document-View深入探讨 为什么需要Document-View(形而上) Document View Document Frame(View Frame) Document Template CDocTemplate管理CDocument/CView/CFrameWnd Scribble Step1的Document——数据结构设计 MFC Collection Classes的选用 CScribbleDoc的修改 文件:一连串的线条 线条与坐标点 Scribble Step 1的View:数据重绘与编辑 CScribbleView的修改 View的重绘操作:GetDocument和OnDraw ClassWizard的辅佐 WizardBar的辅佐 Serialize:对象的档案读写 Serialization以外的档案读写操作 台面上的Serialize操作 台面下的Serialize写档奥秘 台面下的Serialize读档奥秘 DYNAMIC/DYNCREATE/SERIAL三宏 Serializable的必要条件 CObject类 IsKindOf IsSerializable CObject::Serialize CArchive类 operator《和operator》 效率考虑 自定SERIAL宏给抽象类使用 在CObList中加入CStroke以外的类 Document与View交流——为Step4做准备 第9章 消息映射与命令传递 到底要解决什么 消息分类 万流归宗Command Target(CCmdTarget) 三个奇怪的宏,一张巨大的网 DECLARE_MESSAGE_MAP宏 消息映射网的形成:BEGIN…/ON…/END…宏 米诺托斯(Minotauros)与西修斯(Theseus) 二万五千里长征——消息的传递 直线上溯(一般Windows消息) 拐弯上溯(WM_COMMAND命令消息) 罗塞达碑石:AfxSig_xx的奥秘 Scribble Step2:UI对象的变化 改变菜单 改变工具栏 利用ClassWizard连接命令项识别码与命令处理函数 维护UI对象状态(UPDATE_COMMAND_UI) 本章回顾 第10章 MFC与对话盒 对话框编辑器 利用ClassWizard连接对话框与其专用类 对话框的消息处理函数 对话框数据交换与校验(DDX&DDV) 如何唤起对话框 本章回顾 第11章 View功能的加强与重绘效率的提高 同时修改多个Views:UpdateAllViews和OnUpdate 在View中定义一个hint 把hint传给OnUpdate 利用hint增加重绘效率 可卷动的窗口:CScrollView 大窗口中的小窗口:Splitter 切分窗口的功能 切分窗口的程序概念 切分窗口的实现 本章回顾 第12章 打印与预览 概述 打印操作的后台原理 MFC默认的打印机制 Scribble打印机制的增强 打印机的页和文件的页 配置GDI绘图工具 尺寸与方向:关于映射方式(坐标系统) 分页 页眉与页脚 动态计算页码 打印预览(Print Preview) 本章回顾 第13章 多重文件与多重显示 MDI和SDI 多重显示(Multiple Views) 窗口的动态切分 窗口的静态切分 CreateStatic和CreateView 窗口的静态三叉切分 Graph范例程序 静态切分窗口之观念整理 同源子窗口 CMDIFrameWnd::OnWindowNew Text范例程序 非标准做法的缺点 多重文件 新的Cocument类 新的Document Template 新的UI系统 新文件的档案读写操作 第14章 MFC多线程程序设计 从操作系统层面看线程 三个观念:模块、行程和线程 线程优先级(Priority) 线程调度(Scheduling) Thread Context 从程序设计层面看线程 Worker Threads和UI Threads 错误观念 正确态度 MFC多线程程序设计 探索CWinThread 产生一个Worker Thread 产生一个UI Thread 线程的结束 线程与同步控制 MFC多线程程序例程 第15章 定制一个AppWizard 到底Wizard是什么? Custom AppWizard的基本操作 剖析AppWizard Components Dialog Templates和Dialog classes Macros Directives 动手修改Top Studio AppWizard 利用资源编辑器修改IDD_CUSTOM1对话框画面 利用ClassWizard修改IDD_CUSTOM1对话框的对应类CCustomlDlg 改写OnDismiss虚拟函数,在其中定义macros 修改text template Top Studio AppWizard执行结果 更多的信息 第16章 站上众人的肩膀——使用Components&activeX Controls 什么是Component Gallery 使用Components Splash screen system Info for About Dlg Tip of the Day Components实际运用:ComTest程序 修改ComTest程序内容 使用ActiveX Controls ActiveX Control基础观念:Properties、Methods、Events ActiveX Controls的五大使用步骤 使用ActiveX Control:OcxTest程序 第五篇 附录 附录A 无责任书评:从摇篮到坟墓Windows的完全学习 无责任书评:MFC四大天王 附录B Scribble Step 5完整原始码 附录C Visual C++5.0MFC范例程序一览 附录D 以MFC重建DBWIN

2008-11-21

在 C/C++ 中调用 Java

从 C/C++ 中调用 Java 代码,有一下几个步骤: 1.创建 JVM。调用 JNI_CreateJavaVM()。 2.寻找要调用的类。调用 FindClass()。 3.找到要调用的方法。调用 GetStaticMethodID()/GetMethodID()。 4.运行方法。调用 CallStaticMethod()/CallMethod()。 5.退出 JVM。调用 DestroyJavaVM()。 .............

2008-10-08

SQL_C_API.pdf

C环境开发SQL的API函数. PDF 版本

2007-10-23

shell基础十二篇.pdf

介绍linux shell的基础<br>适合初学者

2007-10-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除