测试:Blog Test

现在流行什么?

两道数学/概率/智力题

题一:在所有有2个孩子的家庭中,如果一个孩子是个女孩,请问另外一个孩子是男孩的概率有多大?

题二:一个岔路口分别通向诚实国和说谎国。来了两个人,已知一个是诚实国的,另一个是说谎国的。诚实国永远说实话,说谎国永远说谎话。现在你要去说谎国,但不知道应该走哪条路,需要问这两个人。请问应该怎么问?

恭贺新禧,大吉大利,虎跃龙腾,心想事成!

周六年夜别徘徊
快到博客乐园来
欢迎.NET的小孩
不要在一旁发呆
一起大声呼喊
向寂寞午夜说bye bye!

在这万家灯火爆竹声声辞旧岁的时刻,我向您拜年了!对在过去的一年里面帮助和关心着我的人们,我要深深地说声谢谢。繁忙的生活常使我们疏于联系,请多保重。我相信我们一定会再见,那一天也许就在虎年.

祝我们的2010一帆风顺。恭贺新禧,心想事成!

使用Visual Studio 2010得到另外一个VS的Call Stack和Crash Dump

很多Visual Studio 2010的用户积极地向我们反馈使用中遇到的各种问题。当这些问题包括了VS的Crash(崩溃)时,我们往往希望能够得到一个稳定的Repro Steps(重现步骤),以及Crash的Call Stack和Dump文件。

得到Call stack和Crash dump文件的一个方法就是使用Visual Studio 2010。具体的步骤如下:

  1. 启动一个Visual Studio。我们将用这个VS重现Crash.
  2. 启动另外一个Visual Studio进程。我们将用其debug先前启动的VS.
  3. 在第二个VS的Tools|Options|Debugging之中,不选”Enable Just My Code”。然后在Symbols选项中选中Microsoft Symbols Servers.
  4. 在合适的时候(可以是一开始,也可以是在使用第一个VS一段时间快要Crash的时候),在第二个VS的Tools菜单,选择”Attach to process…”
  5. 在进程列表中找到第一个VS的devenv.exe.注意列表中不会显示第二个VS的进程
  6. 点击Select …按钮。在Select Code Type对话框中选中Managed(v4.0)和Native.然后点击OK.
  7. 再点击Attach按钮完成
  8. 在第一个VS中实现Crash
  9. 此时第二个VS会得到控制(会Break)。
  10. 通过Call Stack窗口可以得到Call Stack. 通过Debug菜单的Save Dump As,保存Crash Dump.

Tech Ed 2009 China DEV312: 内容非常丰富,奖品异常丰富

本周六上午9点25分,Tech Ed 2009 China分会场二,DEV312的讲座期待您的参与。

对WPF和Silverlight的开发人员来说,Visual studio 2010第一次提供了全面和有效的支持。参加本课程以了解Visual Studio 2010在数据绑定,设计器,代码和XAML编辑器,代码调试等方面的最新特性和使用技巧,从而更大提高在开发工作中的效率。本课程还将介绍使用可扩展性架构定制新的设计时特性。

在DEV312的分会场,您不仅有可能获得大会提供的毛绒玩具奖品(共2个),还有机会获得其他各种礼物。虽然因为时间的限制我不能够为每一位参加讲座的朋友发送纪念品,我对大家支持的感谢都是一样的。

以我多年参加Tech Ed的感受而言,今年的DEV312: 内容非常丰富,奖品异常丰富。只此一场,机不可失!

Tech Ed 2009:11月7日Cider Beta2时段

您使用Visual Studio 2008 SP1下的WPF Designer么?您通过Visual Studio 2008 SP1开发Silverlight应用程序么?您对Visual Studio 2010的新特性是否翘首以待?

Cider意为苹果汁, 苹果酒。作为微软内部的产品代码名,指的是Visual Studio中的WPF/Silverlight设计器。

在Tech Ed 2009第三天,即11月7日星期六的上午9点25分,请在分会场2即多功能厅B参加我为本次大会带来的DEV312的课程!

在讲座之后,从10点50分到12点30分,请在四楼“问答区”第2场地和我做进一步的讨论。

如果您有备而来,我也一样准备了礼物。您可以通过以下方式获取纪念品:

  • 参加DEV 312的课程
  • 发现Visual Studio 2010中Cider的重要缺陷(Bug),这既包括了产品crash等影响稳定性的bug,也包括在编辑XAML时不够顺畅等影响性能的bug。
  • 在把您的Visual Studio 2008 SP1的工程升级后出了的问题。
  • 对下一个版本的Viusal Studio中Cider的新特性之建议。

再过几个小时,我就将离开西雅图参加微软技术大会暨创新体验发布盛典。请参与11月7日Cider Beta 2时段的活动。众多礼物,没你不行!

而您能收获的最好的礼物,一定是更快更稳且有更合适功能的Visual Studio 2010。产品还未正式发布,您现在就能帮助我们实现愿景。我们不见不散!

VS2010 Beta2 反馈

您如果已经使用了VS2010 Beta 2,我们很希望能够听到你的反馈。

请通过https://mscuillume.smdisp.net/Collector/Survey.ashx?Name=D10G1为我们提供您对Beta 2的感受,建议和意见。

您如果参加下周北京的Tech Ed 2009,还可以直接向我提出反馈,尤其是关于WPF/Silverlight设计器的问题和建议。在会场,您还有可能得到来自微软的纪念品。具体安排,敬请关注本blog。

谢谢您对Visual Studio 2010的支持!

如果VS 2010 Beta2报告安装成功但Microsoft Silverlight 3 SDK安装失败

如果在安装Visual Studio 2010的最后看到这样的界面,您的Visual Studio 安装是成功的,但是最新的Silverlight 3 SDK的确是安装失败了。

image

在您的机器上也许已经跟随Expression Blend 3安装了Silverlight 3 SDK RTW (3.0.40624.0)版本。而VS2010 Beta2欲安装最新的Silverlight 3 SDK GDR2 (3.0.40818.0)版本。

GDR2的版本除了修正一些Bug之外,还增强了对SDK中控件的设计时支持。

所以,虽然使用RTW的版本一样可以创建,编译和运行Silverlight项目,我们强烈地建议您卸载RTW版本,安装最新的SDK。您没有必要重新安装VS 2010 Beta2。

Cider扩展架构:AttributeTable和AttributeTableBuilder

IProvideAttributeTable的唯一任务是提供AttributeTable。AttributeTable包含了定义设计时外表(apperance)和行为(behavior)的元数据(metadata)属性(attribute)。

AttributeTable这个sealed的类并没有定义一个公共的构造函数。而且AttributeTable的内容对外是只读的。那么我们如何能够提供我们的AttributTable呢?

答案是使用AttributeTableBuilder(Design Pattern: Builder Pattern)。AddCustomAttributes()可用来添加新的属性。AddTable()则是将现有的AttributeTable内容全部加入到正在创建的AttributeTable之中。

当所有定义设计时外表和行为的元数据属性加入到AttributeTableBuilder之后,我们通过调用CreateTable()返回一个AttributeTable的实例。

从IRegisterMetaData到IProvideAttributeTable

为了能同时支持WPF和Silverlight设计时,并且能进一步增加和Expression Blend的代码共享,我们对Visual Studio 2010之中WPF/Silverlight设计器的扩展架构做了一些改变。

您可能会首先注意到:Microsoft.Windows.Design.dll已经不存在了。而原先在此程序集中定义的IRegisterMetadata界面(只定义了一个方法Register)也被在Microsoft.Windows.Design.Extensibility.dll中定义的IProvideAttributeTable界面所取代。

IProvideAttributeTable的源代码如下:

namespace Microsoft.Windows.Design.Metadata {
    /// <summary>
    /// Interface implemented by a class to provide an attribute table.
    /// </summary>
    public interface IProvideAttributeTable {

        /// <summary>
        /// The attribute table to supply
        /// </summary>
        AttributeTable AttributeTable { get; }
    }
}

IProvideAttributeTable是对VS2010中WPF/Silverlight设计器做扩展的切入点。在这几周的博客之中我将更多地讨论扩展架构。

回到顶部