在仿真器中运行时跳过Windows Azure Startup任务

本文介绍如何在Windows Azure中使用Startup任务,并在本地计算仿真器运行时跳过冗长的安装步骤。通过设置环境变量EMULATED,可以轻松判断是否处于仿真模式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Startup任务通常被用在Windows Azure中安装东西或改变托管角色代码虚拟机的一些配置。有时当你通过计算仿真器在当地运行和测试时你不想执行那些安装步骤。(例如,你可能跳过一个冗长的下载或跳过你计算机上已有东西的安装)。

使用SDK 1.5,有几种被支持的方法来确定它是不是在仿真模式下运行。从.NET代码来看,有新的RoleEnvironment.IsEmulated 静态属性。从其他代码来看(像是批处理文件startup 任务),SDK 1.5带来一种很好的方法来将IsEmulated 值放到环境变量中。下面是startup任务的定义,将获得一个EMULATED 环境变量,来判别该角色是否在计算仿真器里运行。

<Startup> <Task executionContext="elevated" commandLine="startup\startup.cmd"> <Environment> <Variable name="EMULATED"> <RoleInstanceValue xpath="/RoleEnvironment/Deployment/@emulated" /> </Variable> </Environment> </Task> </Startup>

注意xpath 属性。你可以提供很多种有用的path,将帮助你获得如端点的端口、本地存储资源的位置或配置的setting值。详细信息请查看MSDN文档:“xPath Values in Windows Azure”“WebRole Schema”

现在我们需要做的是利用我们startup任务中的这个环境变量值。startup.cmd 的第一行简单地检查一下环境变量值,如果它被设为true就立即退出:

if "%EMULATED%"=="true" goto :EOF

我曾经在我的startup任务中写了各种各样的测试以避免重复运行电脑上的安装程序,这个新特性让我省去了这些事情。

本文翻译自:http://blog.smarx.com/posts/skipping-windows-azure-startup-tasks-when-running-in-the-emulator

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值