Skip to content

Commit ba5e072

Browse files
authored
Merge pull request #4755 from MicrosoftDocs/master
5/31 AM Publish
2 parents 25570fb + ceca64e commit ba5e072

File tree

41 files changed

+209
-147
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+209
-147
lines changed

docs/debugger/debug-interface-access/cv-cpu-type-e.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ typedef enum CV_CPU_TYPE_e {
8484
CV_CFL_EBC = 0xE0,
8585
CV_CFL_THUMB = 0xF0
8686
CV_CFL_ARMNT = 0xF4,
87+
CV_CFL_ARM64 = 0xF6,
8788
CV_CFL_D3D11_SHADER = 0x100,
8889
} CV_CPU_TYPE_e;
8990
```

docs/debugger/debug-live-azure-apps-faq.md

Lines changed: 140 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,18 +43,156 @@ Yes, snapshot debugging can work for servers under load. The Snapshot Debugger t
4343

4444
You can uninstall the Snapshot Debugger site extension on your App Service with the following steps:
4545

46-
1. Turn off your App Service either through the Cloud Explorer in Visual Studio or Azure portal.
46+
1. Turn off your App Service either through the Cloud Explorer in Visual Studio or the Azure portal.
4747
1. Navigate to your App Service's Kudu site (that is, yourappservice.**scm**.azurewebsites.net) and navigate to **Site extensions**.
4848
1. Click the X on the Snapshot Debugger site extension to remove it.
4949

5050
#### Why are ports opened during a Snapshot Debugger session?
5151

5252
Snapshot Debugger needs to open a set of ports in order to debug the snapshots taken in Azure, these are the same ports required for remote debugging. [You can find the list of ports here](../debugger/remote-debugger-port-assignments.md).
5353

54+
#### How do I disable the Remote Debugger extension?
55+
56+
For App Services:
57+
1. Disable Remote Debugger extension via the Azure portal for your App Service.
58+
2. Azure portal > your Application Service resource blade > *Application Settings*
59+
3. Navigate to the *Debugging* section and click the *Off* button for *Remote debugging*.
60+
61+
For AKS:
62+
1. Update your Dockerfile to remove the sections corresponding to the [Visual Studio Snapshot Debugger on Docker images](https://github.com/Microsoft/vssnapshotdebugger-docker).
63+
2. Rebuild and redeploy the modified Docker image.
64+
65+
For virtual machine/virtual machine scale sets remove the Remote Debugger extension, Certificates, KeyVaults and InBound NAT pools as follows:
66+
67+
1. Remove Remote Debugger extension
68+
69+
There are several ways to disable the Remote Debugger for virtual machines and virtual machine scale sets:
70+
71+
- Disable the Remote Debugger through Cloud Explorer
72+
73+
- Cloud Explorer > your virtual machine resource > Disable Debugging (Disabling Debugging does not exist for virtual machine scale set on Cloud Explorer).
74+
75+
76+
- Disable the Remote Debugger with PowerShell Scripts/Cmdlets
77+
78+
For virtual machine:
79+
80+
```
81+
Remove-AzVMExtension -ResourceGroupName $rgName -VMName $vmName -Name Microsoft.VisualStudio.Azure.RemoteDebug.VSRemoteDebugger
82+
```
83+
84+
For virtual machine scale sets:
85+
```
86+
$vmss = Get-AzVmss -ResourceGroupName $rgName -VMScaleSetName $vmssName
87+
$extension = $vmss.VirtualMachineProfile.ExtensionProfile.Extensions | Where {$_.Name.StartsWith('VsDebuggerService')} | Select -ExpandProperty Name
88+
Remove-AzVmssExtension -VirtualMachineScaleSet $vmss -Name $extension
89+
```
90+
91+
- Disable the Remote Debugger through the Azure portal
92+
- Azure portal > your virtual machine/virtual machine scale sets resource blade > Extensions
93+
- Uninstall Microsoft.VisualStudio.Azure.RemoteDebug.VSRemoteDebugger extension
94+
95+
96+
> [!NOTE]
97+
> Virtual machine scale sets - The portal does not allow removing the DebuggerListener ports. You will need to use Azure PowerShell. See below for details.
98+
99+
2. Remove Certificates and Azure KeyVault
100+
101+
When installing the Remote Debugger extension for virtual machine or virtual machine scale sets, both client and server certificates are created to authenticate the VS client with the Azure Virtual Machine/virtual machine scale sets resources.
102+
103+
- The Client Cert
104+
105+
This cert is a self-signed certificate located in Cert:/CurrentUser/My/
106+
107+
```
108+
Thumbprint Subject
109+
---------- -------
110+
111+
1234123412341234123412341234123412341234 CN=ResourceName
112+
```
113+
114+
One way to remove this certificate from your machine is via PowerShell
115+
116+
```
117+
$ResourceName = 'ResourceName' # from above
118+
Get-ChildItem -Path Cert:\CurrentUser\My | Where-Object {$_.Subject -match $ResourceName} | Remove-Item
119+
```
120+
121+
- The Server Certificate
122+
- The corresponding server certificate thumbprint is deployed as a secret to Azure KeyVault. VS will attempt to find or create a KeyVault with prefix MSVSAZ* in the region corresponding to the virtual machine or virtual machine scale sets resource. All virtual machine or virtual machine scale sets resources deployed to that region therefore will share the same KeyVault.
123+
- To delete the server certificate thumbprint secret, go to the Azure portal and find the MSVSAZ* KeyVault in the same region that's hosting your resource. Delete the secret which should be labeled `remotedebugcert<<ResourceName>>`
124+
- You will also need to delete the server secret from your resource via PowerShell.
125+
126+
For virtual machines:
127+
128+
```
129+
$vm.OSProfile.Secrets[0].VaultCertificates.Clear()
130+
Update-AzVM -ResourceGroupName $rgName -VM $vm
131+
```
132+
133+
For virtual machine scale sets:
134+
135+
```
136+
$vmss.VirtualMachineProfile.OsProfile.Secrets[0].VaultCertificates.Clear()
137+
Update-AzVmss -ResourceGroupName $rgName -VMScaleSetName $vmssName -VirtualMachineScaleSet $vmss
138+
```
139+
140+
3. Remove all DebuggerListener InBound NAT pools (virtual machine scale set only)
141+
142+
The Remote Debugger introduces DebuggerListener in-bound NAT pools that are applied to your scaleset's load balancer.
143+
144+
```
145+
$inboundNatPools = $vmss.VirtualMachineProfile.NetworkProfile.NetworkInterfaceConfigurations.IpConfigurations.LoadBalancerInboundNatPools
146+
$inboundNatPools.RemoveAll({ param($pool) $pool.Id.Contains('inboundNatPools/DebuggerListenerNatPool-') }) | Out-Null
147+
148+
if ($LoadBalancerName)
149+
{
150+
$lb = Get-AzLoadBalancer -ResourceGroupName $ResourceGroup -name $LoadBalancerName
151+
$lb.FrontendIpConfigurations[0].InboundNatPools.RemoveAll({ param($pool) $pool.Id.Contains('inboundNatPools/DebuggerListenerNatPool-') }) | Out-Null
152+
Set-AzLoadBalancer -LoadBalancer $lb
153+
}
154+
```
155+
156+
#### How do I disable Snapshot Debugger?
157+
158+
For App Service:
159+
1. Disable Snapshot Debugger via the Azure portal for your App Service.
160+
2. Azure portal > your Application Service resource blade > *Application Settings*
161+
3. Delete the following App settings in the Azure portal and save your changes.
162+
- INSTRUMENTATIONENGINE_EXTENSION_VERSION
163+
- SNAPSHOTDEBUGGER_EXTENSION_VERSION
164+
165+
> [!WARNING]
166+
> Any changes to Application Settings will initiate an app restart. Details about Application Settings can be found [here](https://docs.microsoft.com/azure/app-service/web-sites-configure#app-settings).
167+
168+
For AKS:
169+
1. Update your Dockerfile to remove the sections corresponding to the [Visual Studio Snapshot Debugger on Docker images](https://github.com/Microsoft/vssnapshotdebugger-docker).
170+
2. Rebuild and redeploy the modified Docker image.
171+
172+
For virtual machine/virtual machine scale sets:
173+
174+
There are several ways to disable the Snapshot Debugger:
175+
- Cloud Explorer > your virtual machine/virtual machine scale set resource > Disable Diagnostics
176+
177+
- Azure portal > your virtual machine/virtual machine scale set resource blade > Extensions > Uninstall Microsoft.Insights.VMDiagnosticsSettings extension
178+
179+
- PowerShell Cmdlets from [Az PowerShell](https://docs.microsoft.com/powershell/azure/overview)
180+
181+
Virtual machine:
182+
```
183+
Remove-AzVMExtension -ResourceGroupName $rgName -VMName $vmName -Name Microsoft.Insights.VMDiagnosticsSettings
184+
```
185+
186+
Virtual machine scale sets:
187+
```
188+
$vmss = Get-AzVmss -ResourceGroupName $rgName -VMScaleSetName $vmssName
189+
Remove-AzVmssExtension -VirtualMachineScaleSet $vmss -Name Microsoft.Insights.VMDiagnosticsSettings
190+
```
191+
54192
## See also
55193
56194
- [Debugging in Visual Studio](../debugger/index.md)
57195
- [Debug live ASP.NET apps using the Snapshot Debugger](../debugger/debug-live-azure-applications.md)
58-
- [Debug live ASP.NET Azure Virtual Machines\Virtual Machines Scale Sets using the Snapshot Debugger](../debugger/debug-live-azure-virtual-machines.md)
196+
- [Debug live ASP.NET Azure Virtual Machines\Virtual Machines scale sets using the Snapshot Debugger](../debugger/debug-live-azure-virtual-machines.md)
59197
- [Debug live ASP.NET Azure Kubernetes using the Snapshot Debugger](../debugger/debug-live-azure-kubernetes.md)
60198
- [Troubleshooting and known issues for snapshot debugging](../debugger/debug-live-azure-apps-troubleshooting.md)

docs/debugger/debug-live-azure-virtual-machines-time-travel-debugging.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ In this tutorial, you will:
3838
* Time Travel Debugging is available for the following Azure VM web apps:
3939
* ASP.NET applications (AMD64) running on .NET Framework 4.8 or later.
4040

41-
## Open your project and start the Snapshot Debugger with Time Travel Debugging enabled
41+
## Start the Snapshot Debugger with Time Travel Debugging enabled
4242

4343
1. Open the project for which you would like to collect a time travel recording.
4444

docs/ide/default-keyboard-shortcuts-in-visual-studio.md

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -164,11 +164,13 @@ The sections in the following table include commands that are global in that you
164164
|Edit.FindPreviousSelected|**Ctrl+Shift+F3**|
165165
|Edit.GenerateMethod|**Ctrl+K, Ctrl+M**|
166166
|Edit.GoTo|**Ctrl+G**|
167+
|Edit.GoToAll|**Ctrl+,** or **Ctrl+T**|
167168
|Edit.GoToDeclaration|**Ctrl+F12**|
168169
|Edit.GoToDefinition|**F12**|
169170
|Edit.GoToFindCombo|**Ctrl+D**|
170-
|Edit.GoToNextLocation|**F8**|
171-
|Edit.GoToPrevLocation|**Shift+F8**|
171+
|Edit.GoToMember|**Ctrl+1, Ctrl+M** or **Ctrl+1, M** or **Alt+\\**|
172+
|Edit.GoToNextLocation|**F8** (Next error in Error List or Output window)|
173+
|Edit.GoToPrevLocation|**Shift+F8** (Previous error in Error List or Output window)|
172174
|Edit.InsertSnippet|**Ctrl+K, Ctrl+X**|
173175
|Edit.MoveControlDown|**Ctrl+Down Arrow**|
174176
|Edit.MoveControlDownGrid|**Down Arrow**|
@@ -178,7 +180,6 @@ The sections in the following table include commands that are global in that you
178180
|Edit.MoveControlRightGrid|**Right Arrow**|
179181
|Edit.MoveControlUp|**Ctrl+Up Arrow**|
180182
|Edit.MoveControlUpGrid|**Up Arrow**|
181-
|Edit.NavigateTo|**Ctrl+,**|
182183
|Edit.NextBookmark|**Ctrl+K, Ctrl+N**|
183184
|Edit.NextBookmarkInFolder|**Ctrl+Shift+K, Ctrl+Shift+N**|
184185
|Edit.OpenFile|**Ctrl+Shift+G** (Opens the file name under the cursor)|
@@ -340,15 +341,14 @@ The sections in the following table include commands that are global in that you
340341
|Tools.AttachtoProcess|**Ctrl+Alt+P**|
341342
|Tools.CodeSnippetsManager|**Ctrl+K, Ctrl+B**|
342343
|Tools.ForceGC|**Ctrl+Shift+Alt+F12, Ctrl+Shift+Alt+F12**|
343-
|Tools.GoToCommandLine|**Ctrl+/**|
344344

345345
### <a name="bkmk_view"></a> View
346346

347347
|Commands|Keyboard shortcuts|
348348
|--------------| - |
349349
|View.AllWindows|**Shift+Alt+M**|
350350
|View.ArchitectureExplorer|**Ctrl+\\, Ctrl+R**|
351-
|View.Backward|**Alt+Left Arrow**|
351+
|View.Backward|**Alt+Left Arrow** (Functions differently from View.NavigateBackward in Text Editor)|
352352
|View.BookmarkWindow|**Ctrl+K, Ctrl+W**|
353353
|View.BrowseNext|**Ctrl+Shift+1**|
354354
|View.BrowsePrevious|**Ctrl+Shift+2**|
@@ -363,7 +363,7 @@ The sections in the following table include commands that are global in that you
363363
|View.ErrorList|**Ctrl+\\, E**<br /><br /> or<br /><br /> **Ctrl+\\, Ctrl+E**|
364364
|View.F#Interactive|**Ctrl+Alt+F**|
365365
|View.FindSymbolResults|**Ctrl+Alt+F12**|
366-
|View.Forward|**Alt+Right Arrow**|
366+
|View.Forward|**Alt+Right Arrow** (Functions differently from View.NavigateForward in Text Editor)|
367367
|View.ForwardBrowseContext|**Ctrl+Shift+7**|
368368
|View.FullScreen|**Shift+Alt+Enter**|
369369
|View.NavigateBackward|**Ctrl+-**|
@@ -773,7 +773,6 @@ The sections in the following table include commands that are global in that you
773773
| Edit.CharRight | **Right Arrow** |
774774
| Edit.CharRightExtend | **Shift+Right Arrow** |
775775
| Edit.CharRightExtendColumn | **Shift+Alt+Right Arrow** |
776-
| Edit.CharTranspose | **Ctrl+T** |
777776
| Edit.ClearBookmarks | **Ctrl+K, Ctrl+L** |
778777
| Edit.CollapseAllOutlining | **Ctrl+M, Ctrl+A** |
779778
| Edit.CollapseCurrentRegion | **Ctrl+M, Ctrl+S** |

docs/ide/file-nesting-solution-explorer.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ author: angelosp
99
ms.author: angelpe
1010
manager: jillfra
1111
---
12-
# Customize file nesting in Solution Explorer
12+
# File nesting in Solution Explorer
1313

14-
Nesting of related files in **Solution Explorer** is not new, but until now you had no control over the nesting rules. You can choose between the presets **Off**, **Default** and **Web**, but you can also customize the nesting exactly to your liking. You can even create solution-specific and project-specific settings, but more on all of that later. First let’s go over what you get out-of-the-box.
14+
**Solution Explorer** nests related files to help organize them and make them easier to locate. For example, if you add a Windows Forms form to a project, the code file for the form is nested below the form in **Solution Explorer**. In ASP.NET Core projects, file nesting can be taken a step further. You can choose between the file nesting presets **Off**, **Default**, and **Web**. You can also [customize how files are nested](#customize-file-nesting) or [create solution-specific and project-specific settings](#create-project-specific-settings).
1515

1616
> [!NOTE]
1717
> The feature is currently only supported for ASP.NET Core projects.
@@ -122,7 +122,7 @@ You can manage all settings, including your own custom settings, through the sam
122122

123123
![Activate custom file nesting rules](media/filenesting_activatecustom.png)
124124

125-
## Create solution-specific and project-specific settings
125+
## Create project-specific settings
126126

127127
You can create solution-specific and project-specific settings through the right-click menu (context menu) of each solution and project:
128128

@@ -136,7 +136,7 @@ You can do the opposite and tell Visual Studio to *only* use the solution-specif
136136

137137
Solution-specific and project-specific settings can be checked into source control, and the entire team that works on the codebase can share them.
138138

139-
## Disable global file nesting rules for a particular solution or project
139+
## Disable file nesting rules for a project
140140

141141
You can disable existing global file nesting rules for specific solutions or projects by using the **remove** action for a provider instead of **add**. For example, if you add the following settings code to a project, all **pathSegment** rules that may exist globally for this specific project are disabled:
142142

@@ -151,3 +151,4 @@ You can disable existing global file nesting rules for specific solutions or pro
151151
## See also
152152

153153
- [Personalize the IDE](../ide/personalizing-the-visual-studio-ide.md)
154+
- [Solutions and projects in Visual Studio](solutions-and-projects-in-visual-studio.md)

docs/ide/reference/edit-devenv-exe.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,8 @@ When a file isn't specified, an existing Visual Studio instance receives focus.
3939

4040
If the existing Visual Studio instance is in a modal state, the file opens in the existing instance when Visual Studio exits the modal state. For example, this situation may occur when the [Options dialog box](../../ide/reference/options-dialog-box-visual-studio.md) is open.
4141

42+
If more than one instance of Visual Studio is open, the file is opened in the most recently opened instance.
43+
4244
## Example
4345

4446
The first example opens the file `MyFile.cs` in an existing instance of Visual Studio. If a Visual Studio instance doesn't exist, the tool opens the file in a new instance. The second example is similar except that it opens three files instead of just one file.
@@ -51,4 +53,4 @@ devenv /edit MyFile1.cs MyFile2.cs MyFile3.cs
5153

5254
## See also
5355

54-
- [Devenv command-line switches](../../ide/reference/devenv-command-line-switches.md)
56+
- [Devenv command-line switches](../../ide/reference/devenv-command-line-switches.md)

docs/ide/solutions-and-projects-in-visual-studio.md

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,17 @@ title: Solutions and projects
33
ms.date: 10/05/2017
44
ms.topic: conceptual
55
f1_keywords:
6+
- "vs.addnewitem"
67
- "vs.addnewsolutionitem"
7-
- "vs.environment.projects"
88
- "vs.openproject"
9-
- "vs.addnewitem"
109
- "vs.addexistingitem"
11-
- "VS.SolutionExplorer"
1210
- "vs.addexistingsolutionitem"
11+
- "vs.environment.projects"
1312
- "vs.environment.solutions"
13+
- "VS.SolutionExplorer"
1414
- "VS.SolutionExplorer.Solutions"
1515
helpviewer_keywords:
16-
- "solution items [Visual Studio]"
1716
- "solutions [Visual Studio]"
18-
- "project items [Visual Studio]"
19-
- "solutions [Visual Studio], designing"
2017
- "projects [Visual Studio]"
2118
author: gewarren
2219
ms.author: gewarren
@@ -58,18 +55,22 @@ Visual Studio uses two file types (*.sln* and *.suo*) to store settings for solu
5855

5956
## Create new projects
6057

61-
The easiest way to create a new project is to start from a project template for a particular type of application or website. A project template consists of a basic set of pre-generated code files, config files, assets, and settings. These templates are available in the dialog box where you create a new project (**File** > **New** > **Project**). For more information, see [Create solutions and projects](../ide/creating-solutions-and-projects.md).
58+
The easiest way to create a new project is to start from a project template for a particular type of application or website. A project template consists of a basic set of pre-generated code files, config files, assets, and settings. These templates are available in the dialog box where you create a new project (**File** > **New** > **Project**). For more information, see [Create a new project in Visual Studio](create-new-project.md) and [Create solutions and projects](../ide/creating-solutions-and-projects.md).
6259

63-
You can also create custom project and item templates. For more information, see [Create project and item templates](../ide/creating-project-and-item-templates.md).
60+
If you often customize your projects in a certain way, You can create a custom project template that you can then use to create new projects from. For more information, see [Create project and item templates](../ide/creating-project-and-item-templates.md).
6461

65-
When you create a new project, it is saved by default at *%USERPROFILE%\source\repos*. You can customize this location in the **Projects location** setting under **Tools** > **Options** > **Projects and Solutions** > **Locations**. For more information, see [Projects and Solutions page, Options dialog box](../ide/reference/projects-and-solutions-options-dialog-box.md).
62+
When you create a new project, it is saved by default at *%USERPROFILE%\source\repos*. You can change this location in the **Projects location** setting under **Tools** > **Options** > **Projects and Solutions** > **Locations**. For more information, see [Projects and Solutions page, Options dialog box](../ide/reference/projects-and-solutions-options-dialog-box.md).
6663

67-
## Manage projects in Solution Explorer
64+
## Solution Explorer
6865

69-
After you create a new project, you can use **Solution Explorer** to view and manage the project and solution, and their associated items. The following illustration shows **Solution Explorer** with a C# solution that contains two projects:
66+
After you create a new project, you can use **Solution Explorer** to view and manage the project and solution and their associated items. The following illustration shows **Solution Explorer** with a C# solution that contains two projects:
7067

7168
![Solution Explorer](../ide/media/vs2015_solution_explorer.png)
7269

70+
Many menu commands are available from the right-click menu on various items in **Solution Explorer**. These commands include building a project, managing NuGet packages, adding a reference, renaming a file, and running tests, just to name a few. The toolbar across the top of **Solution Explorer** has buttons to switch from a solution view to a folder view, show hidden files, collapse all nodes, and more.
71+
72+
For ASP.NET Core projects, you can customize how files are nested in **Solution Explorer**. For more information, see [Customize file nesting in Solution Explorer](file-nesting-solution-explorer.md).
73+
7374
## See also
7475

7576
- [Visual Studio IDE](../get-started/visual-studio-ide.md)

0 commit comments

Comments
 (0)