随笔分类 -  杂谈

上一页 1 2
[翻译]深入理解Win32结构化异常处理(二)
摘要:辛辛苦苦翻译了那么长,突然间发现网上早有这篇文章的翻译,贴过来吧。进一步深入 有了前面的最简单的例子,让我们再回过头去填补一些空白。虽然这个异常回调机制很棒,但它并不是一个完美的解决方案。对于稍微复杂一些的应用程序来说,仅用一个函数就能处理程序中任何地方都可能发生的异常是相当困难的。一个更实用的方案应该是有多个异常处理例程,每个例程针对程序的特定部分。不知你是否知道,实际上,操作系统提供的正是这个功能。 还记得系统用来查找异常回调函数的 EXCEPTION_REGISTRATION 结构吗?这个结构的第一个成员,称为 prev,前面我们曾把它忽略掉了。它实际上是一个指向另外一个 EXCEP.. 阅读全文
posted @ 2012-06-20 15:31 salomon 阅读(1290) 评论(0) 推荐(0) 编辑
[翻译]深入理解Win32结构化异常处理(一)
摘要:在所有的Win32操作系统提供的功能里,最常用但是描述最不全的(underdocument)恐怕就是结构化异常处理了(structured exception handling (SEH))。当你想到Win32的结构化异常处理,你会想到_try, _finally,和 _except这些东西,你可以从任何一本Win32的书中找到SEH的很好的描述,即使是Win32SDK也有一个非常完备的关于_try, _finally,和 _except等的结构化异常处理的概述。既然有这么多关于关于SEH的书,为什么还说它描述不全呢,那是因为本质上讲Win32的结构化异常处理是操作系统提供的服务。所有你能找到 阅读全文
posted @ 2012-06-20 13:42 salomon 阅读(2499) 评论(2) 推荐(1) 编辑
WinRT简介
摘要:什么是WinRT? 首先WinRT是微软为了方便开发者编写Metro风格的程序而提供的一个开发平台。对于广大普通开发者而言,WinRT就是一堆Storage, Pickers, Controls,network,Media等组件的可供调用的API函数。开发者可以调用微软通过WinRT暴露出来的这些接口编写Metro风格的程序。那么WinRT这个平台有什么特点呢? 1. 它可以让开发者使用微软支持的任何语言开发程序(C++/CX,C#/VB,JavaScript)。 2. 它是一种建立在COM之上的技术,也就是说是基于COM的(所有WinRT的接口都继承自IInspectable... 阅读全文
posted @ 2012-05-22 11:43 salomon 阅读(17682) 评论(7) 推荐(8) 编辑
什么是Windows服务
摘要:Windows服务,微软的官方定义是这样的:Microsoft Windows 服务(即以前的 NT 服务)使您能够创建在它们自己的 Windows 会话中可长时间运行的可执行应用程序。这些服务可以在计算机启动时自动启动,可以暂停和重新启动而且不显示任何用户界面。这些功能使服务非常适合在服务器上使用,每当需要使用不会影响在同一台计算机上工作的其他用户的功能时也适用。还可以在不同于登录用户的特定用户帐户或默认计算机帐户的安全上下文中运行服务。 这种描述过于抽象而且笼统。那么究竟什么是服务呢?首先Windows服务和普通应用一样是是一个应用程序,一个后台进程。但它又十分特殊,特殊在以下几点: .. 阅读全文
posted @ 2012-05-21 15:08 salomon 阅读(5442) 评论(0) 推荐(2) 编辑
COM入门简介
摘要:COM简单来说在不同应用和语言之间提供了一种二进制代码级分享途径的方法。这和C++重用代码有很大不同,C++只是提供了一种源代码级的 代码重用(ATL就是一个很好的例子)它的调用者只能使用C++语言,C++这种重用代码缺点是带来了命名冲突,同一工程中多份代码copy导致代码臃肿等。COM定义了一种二进制规范,这个规范规定了二进制模块必须按照一定的结构编译,同时也规定了COM对象在内存中的存储方式。由于COM对象在内存中的结构和C++虚函数的结构碰巧一样,所以大量的COM源码都是C++语言编写的,但需要强调的是,COM的开发与语言无关,任何语言都可以用来编写COM组件,同时COM也不是Win32 阅读全文
posted @ 2012-05-21 11:00 salomon 阅读(1866) 评论(0) 推荐(0) 编辑

上一页 1 2