“Longhorn”应用开发部署初探(一)

作者:Dino Esposito
翻译:winsome zhong

       从各方面来讲,微软的下一代视窗即代号为“Longhorn”的操作系统,都是Windows产品中一个非常重要的里程碑。“Longhorn”是首个用托管代码构建的操作系统,采用了微软最新的存储子系统“WinFS”,支持一种更为高级的自然搜索技术(Natural UI)以及最新的安全架构“Palladium”, 在Windows的历史上,我记得也就只有两个这样重要的里程碑,一个是Windows由16位向32位的迁移,另一个是.Net的诞生。当然,“Longhorn”这些令人兴奋的新特性同时也表明我们以往驾轻就熟的开发方式将发生重大的变化(呵呵,最近对于微软开发技术和开发工具更新太快的怨言好像越来越多了,但抱怨归抱怨,我相信“Longhorn”全新的开发模型肯定会让你精神振奋的)。其中最为重要的一个改变是 “Longhorn”使得应用程序可以一次编码,多场景部署。为实现该功能,基于“Longhorn”的应用是完全面向对象的,整个应用派生于一个核心对象Application,该对象提供了运行整个应用程序所需的所有核心功能。本文将带领大家体验最新的Longhorn应用模型,并演示一些基本的例子,其中当然包括经典的“Hello World!”。

一、Longhorn应用模型
       Application对象是Longhorn应用模型的核心,通过它的属性、方法和事件,你可以像编写网页一样使用一种增强的html来编写传统的Windows窗体应用程序。Application是一个Longhorn应用程序的根对象。它提供了应用程序的基本功能,可用于一些低级的、不需要在窗体间导航和维护状态的程序 ,但更复杂的Longhorn应用程序要使用NavigationApplication对象,这是一个Application的子类 ,增加了对导航的支持。
       一个典型的Longhorn应用程序可以被看作一系列带有程序脚本的页面(叫做Page),并由Application对象控制程序的执行。Page使用一种新的标记语言来编写,这种标记语言的代号是“XAML ”(Extensible Application Markup Language)。通过XAML的元素标签你可以控制Page的布局,包括显示文本和图片,插入按钮、文本筐等交互式控件。一言概之,“XAML”是用来编写Longhorn应用程序UI界面Page的标记语言。当然,除了使用XAML,你也可以完全使用程序代码来编写应用程序。一般来说Longhorn程序会同时使用XAML和托管代码。你可以按自己的方式来组合它们。
       使用XAML和C#(或VB.NET),你可以构建各种类型的应用输出文件,传统的exe执行文件,DLL 库,或者Console应用程序。而且,如果你的应用程序足够简单的话,你也可以完全使用独立的XAML标签来编写它,这样在longhorn中就多了一种类型的程序。当独立的XAML文件没有引用别的后台类时,它可以直接在Longhorn Shell和浏览器中运行。其实Longhorn的可执行文件都是既可以运行在Windows中,也可以运行在浏览器中的,你无需对程序的代码做任何的修改,只要在编译的时候设置不同的项目属性就行了。
       对于Longhorn,可执行程序是今天Windows窗体程序的下一个版本。但从另一方面来说,XAML以及基于浏览器的应用程序也代表了应用程序做为web客户端的开发模式的一次革新。目前,Windows窗体客户端程序很少被发布到web上,因为如果你想把Windows窗体嵌入到浏览器网页中,你会受到诸多限制,还必须对代码做相应的修改。而在Longhorn中,通用的应用模型使你可以编写一个程序并通过web来部署。不过,这与我们传统的web应用(比如Asp.Net)有很大的区别,这是Longhorn专有的应用程序。
       当你编译一个应用时,代号为“Whidbey”的下一个版本的Visual Studio和.Net Framework(或者说它底层的MSBuild.exe工具),会生成一个.exe文件,一个程序文件清单(扩展名是.manifest)和一个部署文件清单(扩展名是.deploy).当你点击.exe文件,程序会如你所期望的那样运行于Windows中。但是如果把程序设置为在浏览器中运行,那点击.exe文件时IE会自动跳出来并在其中运行程序。还有一种可选的方式是把程序部署在远端服务器上,步骤如下,首先把.deploy文件拷贝到服务器的合适位置,可以是FTP或HTTP的相对路径下。然后把编译后的程序文件和.manifest拷到服务器上,程序文件、.manifest文件不一定要和.deploy文件放在一起。如果放在不同的地方,你可以编辑.deploy文件,使它指向.manifest文件。.manifest文件和

阅读终点,创作起航,您可以撰写心得或摘录文章要点写篇博文。去创作
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

winsome_zhong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值