<?xml version="1.0" encoding="utf-8"?>
<!--Copyright, Microsoft Corporation, All rights reserved.-->
<Rule Name="AppHostSimulatorDebugger" DisplayName="模拟器" PageTemplate="debugger" Order="200" Description="模拟器调试器选项" xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns="http://schemas.microsoft.com/build/2009/properties">
  
  <Rule.Metadata>
    <sys:Guid x:Key="DebugTargetTypeCommandGuid">FEEA6E9D-77D8-423F-9EDE-3970CBB76125</sys:Guid>
    <sys:UInt32 x:Key="DebugTargetTypeCommandId">0x100</sys:UInt32>
  </Rule.Metadata>
  <Rule.DataSource>
    <DataSource Persistence="UserFile"/>
  </Rule.DataSource>
  <Rule.Categories>
    <Category Name="StartOptions" DisplayName="启动选项" Description="启动选项"/>
    <Category Name="GPUOptions" DisplayName="GPU 选项" Description="GPU 选项"/>
  </Rule.Categories>
  <BoolProperty Name="DebuggerLaunchApplication" DisplayName="启动应用程序" Category="StartOptions" F1Keyword="VC.Project.IVCAppHostSimulatorDebugPageObject.LaunchApplication" Description="指定是立即启动我的应用程序还是在我的应用程序开始运行时等待对其进行调试。"/>
  <BoolProperty Name="AllowLocalNetworkLoopback" DisplayName="允许本地网络环回" Category="StartOptions" F1Keyword="VC.Project.IVCAppHostLocalDebugPageObject.AllowLocalNetworkLoopback" Description="在调试 Windows 应用商店应用时，您可以使用本地服务、调试网络通讯以及使用本地环回来与同一计算机上的组件进行通信。"/>
  <EnumProperty Name="DebuggerType" DisplayName="调试器类型" Category="StartOptions" F1Keyword="VC.Project.IVCAppHostSimulatorDebugPageObject.DebuggerType" Description="指定要调试的代码类型。">
    <EnumProperty.Metadata>
      <NameValuePair Name="IsDebugType" Value="true"/>
    </EnumProperty.Metadata>
    <EnumValue Name="NativeOnly" DisplayName="仅限本机"/>
    <EnumValue Name="ManagedOnly" DisplayName="仅限托管"/>
    <EnumValue Name="GPUOnly" DisplayName="仅限 GPU (C++ AMP)"/>
    <EnumValue Name="Script" DisplayName="仅脚本"/>
    <EnumValue Name="Mixed" DisplayName="托管和本机"/>
    <EnumValue Name="NativeWithScript" DisplayName="脚本和本机"/>
  </EnumProperty>
  <DynamicEnumProperty Name="GPUDebuggerTargetType" DisplayName="调试加速器类型" Category="GPUOptions" EnumProvider="GPUTargets" F1Keyword="VC.Project.IVCAppHostSimulatorDebugPageObject.GPUDebuggerTargetType" Description="要用于调试 GPU 代码的调试加速器类型。(GPU 调试器为活动状态时可用。)">
    <DynamicEnumProperty.Metadata>
      <NameValuePair Name="ParentPropertyName" Value="DebuggerType"/>
      <NameValuePair Name="ParentPropertyValue" Value="GPUOnly"/>
    </DynamicEnumProperty.Metadata>
  </DynamicEnumProperty>
    
  <EnumProperty Name="GPURefDebuggerBreakOnAllThreads" DisplayName="GPU 默认断点行为" Category="GPUOptions" Description="设置 GPU 调试器中断的频率。" F1Keyword="VC.Project.IVCAppHostSimulatorDebugPageObject.BreakpointBehavior">
    <EnumValue Name="GPURefBreakOncePerWarp" DisplayName="每次换行中断一次" Description="每次换行中断一次"/>
    <EnumValue Name="GPURefBreakForCPUThread" DisplayName="对每个线程中断(类似 CPU 行为)" Description="对每个线程中断(类似 CPU 行为)"/>
    <EnumProperty.Metadata>
      <NameValuePair Name="ParentPropertyName" Value="DebuggerType"/>
      <NameValuePair Name="ParentPropertyValue" Value="GPUOnly"/>
    </EnumProperty.Metadata>
  </EnumProperty>
  <DynamicEnumProperty Name="DebuggerAmpDefaultAccelerator" DisplayName="Amp 默认快捷键" EnumProvider="AmpAccelerators" F1Keyword="VC.Project.IVCAppHostSimulatorDebugPageObject.AmpDefaultAccelerator" Description="重写 C++ AMP 的默认快捷键选择。调试托管代码时不适用该属性。">
  </DynamicEnumProperty>
  <StringProperty Name="LayoutDir" DisplayName="包布局路径" Description="将在其中复制二进制输出的包布局位置。此位置可能还包含项目的非二进制资产。"/>
  <StringProperty Name="CommandLineArgs" DisplayName="命令行参数" Description="传递给调试程序的命令行参数。"/>
</Rule>
