摘要:
今天无意中收到微软“最有影响力开发者”礼包,这比起博客园的其他兄弟虽然不算什么,但这毕竟是我第一次得到微软的称号,还是值得纪念一下。 “最有影响力的开发者”,您好很高兴能够通过“最有影响力的开发者”这个项目将微软最新的技术资源与您一同分享。第一期技术资源我们已经随此次“最有影响力的开发者欢迎礼包”一同邮... 阅读全文
随笔档案-2009年03月
[网络整理]DEBUG命令使用解析七
2009-03-16 21:19 by 马伟, 510 阅读, 收藏,
摘要:
Debug:XD(释放扩展内存)
释放指向扩展内存的句柄。
要使用扩展内存,必须安装符合 4.0 版的 Lotus/Intel/Microsoft 扩展内存规范 (LIM EMS) 的扩展内存设备驱动程序。
阅读全文
[网络整理]DEBUG命令使用解析六
2009-03-16 21:18 by 马伟, 567 阅读, 收藏,
摘要:
Debug:U(反汇编)
反汇编字节并显示相应的原语句,其中包括地址和字节值。反汇编代码看起来象已汇编文件的列表。
u [range]
参数
无
如果在没有参数的情况下使用,则 u 命令分解 20h 字节(默认值),从前面 u 命令所显示地址后的第一个地址开始。 阅读全文
[网络整理]DEBUG命令使用解析五
2009-03-16 21:17 by 马伟, 556 阅读, 收藏,
摘要:
Debug:Q(退出)
停止 Debug 会话,不保存当前测试的文件。
当您键入 q 以后,控制返回到 Windows 2000 的命令提示符。
q
参数
该命令不带参数。
有关保存文件的信息,请单击“相关主题”列表中的 Debug W(写入)。
++++
阅读全文
[网络整理]DEBUG命令使用解析四
2009-03-16 21:14 by 马伟, 549 阅读, 收藏,
摘要:
Debug:M(移动)
将一个内存块中的内容复制到另一个内存块中。
m range address
参数
range
指定要复制内容的内存区域的起始和结束地址,或起始地址和长度。
address
指定要将 range 内容复制到该位置的起始地址。
++
阅读全文
[网络整理]DEBUG命令使用解析三
2009-03-16 21:11 by 马伟, 996 阅读, 收藏,
摘要:
Debug:G(转向)
运行当前在内存中的程序。
g [=address] [breakpoints]
参数
=address
指定当前在内存中要开始执行的程序地址。如果不指定 address,Windows 2000 将从 CS:IP 寄存器中的当前地址开始执行程序。 阅读全文
[网络整理]DEBUG命令使用解析二
2009-03-16 21:10 by 马伟, 578 阅读, 收藏,
摘要:
Debug:C(比较)
比较内存的两个部分。
c range address
参数
range
指定要比较的内存第一个区域的起始和结束地址,或起始地址和长度。有关有效的 range 值的信息,请单击“相关主题”列表中的“Debug 说明”。
阅读全文
[网络整理]DEBUG命令使用解析一
2009-03-16 21:08 by 马伟, 656 阅读, 收藏,
摘要:
启动 Debug,它是可用于测试和调试 MS-DOS 可执行文件的程序。
Debug [[drive:][path] filename [parameters]]
阅读全文
[转载]C/C++编译器-cl.exe的命令选项
2009-03-16 15:09 by 马伟, 4314 阅读, 收藏,
摘要:
和在IDE中编译相比,命令行模式编译速度更快,并可以避免被IDE产生的一些附加信息所干扰。本文将介绍微软C/C++编译器命令行模式设定和用法。
阅读全文
[易学C#]C#3.0语言新特性
2009-03-13 21:42 by 马伟, 1836 阅读, 收藏,
摘要:
大家都知道,微软的脚步一向比较快。在微软发布Visual Studio 2005和C#2.0之后,又马不停蹄的展示了人们所期望的C#的下一代版本:C# 3.0。其实,在2008年中,大部分公司已经尝试着将自己的开发环境转向Visual Studio 2008和C#3.0,下面我们就来总结一下C#3.0相关新特性: [易学C#]C#3.0语言新特性之隐式类型 [易学C#]C#3.0语言... 阅读全文
[易学C#]C#3.0语言新特性之Lambda表达式
2009-03-12 08:38 by 马伟, 5643 阅读, 收藏,
摘要:
在C#2.0中引入了匿名方法,允许在期望出现委托的时候以“内联”的代码替代之。尽管匿名方法提供了函数式编程语言中的很多表达能力,但匿名方法的语法实在是太罗嗦了,并且很不自然。Lambda表达式为书写匿名方法提供了一种更加简单、更加函数化的语法。
实际上Lambda表达式的本质是匿名方法,也即是当编译我们的程序代码时,编译器会自动帮我们将Lambda表达式转换为匿名方法。
阅读全文
[易学C#]C#3.0语言新特性之对象和集合初始化器
2009-03-10 21:09 by 马伟, 1743 阅读, 收藏,
摘要:
在C#3.0中,一个对象创建表达式可以包含一个对象或集合初始化器,用于初始化新创建的对象的成员或新创建的集合的元素。
对象创建表达式:
new type (argument-list(可选)) 对象或集合初试化器(可选)
new type 对象或集合初试化器
一个对象创建表达式可以省略构造器参数列表,并将其连同圆括号一起替换为一个对象或集合初始化器。省略构造器参数列表并将其连同圆括号一起替换为一个对象或集合初始化器等价于指定一个空的参数列表。
在执行一个带有对象或集合初始化器的对象创建表达式时,首先调用实例构造器,然后执行对象或集合初始化器指定的成员或元素初始化。对象或集合初始化器不能引用正在初始化的对象实例。
阅读全文
[易学C#]C#3.0语言新特性之扩展方法
2009-03-09 23:04 by 马伟, 2039 阅读, 收藏,
摘要:
当我们需要对已有类的功能进行扩展时,我们通常会想到继承,继承已有类,然后为其加入新的行为。而C# 3.0中加入的扩展方法(Extension Methods)特性,则提供了另一种实现功能扩展的方式。
扩展方法是一种特殊的静态方法,它定义在一个静态类中,但可以在其他类的对象上像调用实例方法那样进行调用。因此,通过扩展方法,我们就可以在不修改一个类型的前提下对一个类型进行功能上的扩充,这种方法并不会产生新的类型,而是采用向已有类中加入新方法的方式来完成功能扩展;同时,也可以将一些近似的类型中近似的功能同一实现在一个类中,便于阅读和维护。从最终效果上看,扩展方法使得扩展一个现有类型和构造一个具有附加方法的类型变成了现实。
阅读全文
[易学C#]C#3.0语言新特性之匿名类型
2009-03-08 16:01 by 马伟, 4611 阅读, 收藏,
摘要:
上面我们向读者讲解了隐式类型,接下来我们继续来讨论C#3.0另一个新特性:匿名类型。 阅读全文
[易学C#]C#3.0语言新特性之隐式类型
2009-03-08 00:11 by 马伟, 1941 阅读, 收藏,
摘要:
在C#3.0中增加了一个变量声明var,这个声明和JavaScript 的var类似,但也有不同。相同之处是它可以用var来声明任何类型的局部变量;而不同之处在于它仅仅负责告诉编译器,该变量需要根据初始化表达式来推断变量的类型,而且只能是局部变量。 阅读全文
[讨论]程序之路在何方?
2009-03-07 12:04 by 马伟, 2576 阅读, 收藏,
摘要:
曾经何时,在那个DOS与Windows的年代,汇编与C/C++横行天下,无人可比!与此同时,汇编与C/C++程序员无疑成为新的IT时代的弄潮儿,呼风唤雨。 在这之间,也不怎么的,突然有一天,有一个叫Linus的家伙静悄悄地搞出个Linux来,经过几年的开源的发展,终成气候,誓与Windows争霸天下。当然,因为它的开源性,不知不觉冒出了许多版本的Linux来。这时候Windows/Linux/Un... 阅读全文
浙公网安备 33010602011771号