Skip to content

Repo sync for protected branch #10369

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 41 commits into from
Aug 26, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
7c82625
Add table
ghogen Aug 15, 2024
4114ead
Apply suggestions from code review
ghogen Aug 16, 2024
88794e9
updates
v-albemi Aug 16, 2024
69c81f6
updates
v-albemi Aug 16, 2024
cee5e4d
updates
v-albemi Aug 19, 2024
368c8bb
updates
v-albemi Aug 19, 2024
bacd3fc
Apply suggestions from code review
ghogen Aug 19, 2024
72d3672
Apply suggestions from code review
ghogen Aug 19, 2024
b2fff0a
updates
v-albemi Aug 19, 2024
14a9274
updates
v-albemi Aug 19, 2024
97d2c43
updates
v-albemi Aug 19, 2024
332037a
Apply suggestions from code review
ghogen Aug 20, 2024
2956034
Update docs/containers/container-build.md
ghogen Aug 20, 2024
afa740b
Update docs/containers/container-build.md
ghogen Aug 20, 2024
e0094de
updates
v-albemi Aug 22, 2024
11aa94c
updates
v-albemi Aug 22, 2024
7ad3ca3
updates
v-albemi Aug 22, 2024
05aad99
updates
v-albemi Aug 22, 2024
84e5c4f
updates
v-albemi Aug 22, 2024
4bc7aae
logging draft
TylerMSFT Aug 22, 2024
a5ec1b8
Merge branch 'main' of https://github.com/MicrosoftDocs/visualstudio-…
TylerMSFT Aug 22, 2024
b3820fb
fix draft
TylerMSFT Aug 22, 2024
6976d23
add AOT ARG information
ghogen Aug 22, 2024
aa8488e
typo
TylerMSFT Aug 22, 2024
c4985f7
Clarify a few confusing points
ghogen Aug 22, 2024
dd8cf41
Update docs/ide/how-to-add-or-remove-references-by-using-the-referenc…
ghogen Aug 22, 2024
a95c5e1
Update docs/ide/how-to-add-or-remove-references-by-using-the-referenc…
ghogen Aug 22, 2024
bbc4dcd
Merge pull request #12927 from v-albemi/window-layouts
v-shils Aug 23, 2024
acca314
Merge pull request #12957 from TylerMSFT/UE1712
v-dirichards Aug 23, 2024
79df01c
new output window functionality and manager label change
TylerMSFT Aug 23, 2024
77bd01c
Merge pull request #12961 from ghogen/references-core
prmerger-automator[bot] Aug 23, 2024
32eb81d
Merge pull request #12917 from ghogen/customize-terms
prmerger-automator[bot] Aug 23, 2024
3791a01
fix link
TylerMSFT Aug 23, 2024
24f862a
try lightbox
TylerMSFT Aug 23, 2024
8d2508b
Minor edits to several images to remove customer info
evanwindom Aug 23, 2024
05c2554
Merge pull request #12966 from rigel512/evanwindom-remove-unused-images
Aug 23, 2024
3f1047e
Merge pull request #12965 from TylerMSFT/ue
Aug 23, 2024
5dcc5ba
update
TylerMSFT Aug 23, 2024
d94fb2e
Merge pull request #12967 from TylerMSFT/ue
prmerger-automator[bot] Aug 23, 2024
669a465
Merged main into live
mijacobs Aug 26, 2024
054c059
Merging changes synced from https://github.com/MicrosoftDocs/visualst…
Aug 26, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 47 additions & 0 deletions docs/containers/container-build.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,53 @@ ENTRYPOINT ["dotnet", "WebApplication43.dll"]

The final stage starts again from `base`, and includes the `COPY --from=publish` to copy the published output to the final image. This process makes it possible for the final image to be a lot smaller, since it doesn't need to include all of the build tools that were in the `sdk` image.

The following table summarize the stages used in the typical Dockerfile created by Visual Studio:

| Stage | Description |
| - | - |
| base | Creates the base runtime image where the built app is published. Settings that need to be available at runtime go here, such as ports and environment variables. This stage is used when running from VS in fast mode (Default for Debug configuration). |
| build | The project is built in this stage. The .NET SDK base image is used, which has the components required to build your project. |
| publish | This stage derives from the build stage and publishes your project, which will be copied to the final stage. |
| final | This stage configures how to start the app and is used in production or when running from VS in regular mode (Default when not using the Debug configuration). |
| aotdebug | This stage is used as the base for the final stage when launching from VS to support debugging in regular mode (Default when not using the Debug configuration). |

> [!NOTE]
> The `aotdebug` stage is only supported for Linux containers. It is used in Visual Studio 2022 17.11 and later if [native Ahead Of Time (AOT) deployment](/dotnet/core/deploying/native-aot) is enabled on the project.

::: moniker range=">=vs-2022"
### Customize the image for debugging

To support native AOT deployment, the GNU debugger (GDB) is installed, but only on the image used when debugging, not the final runtime image. The Dockerfile includes a build argument `LAUNCHING_FROM_VS` which can be `true` or `false`. If `true`, the `aotdebug` stage is used, which is where GDB is installed. Note that Visual Studio only supports native AOT and GDB for Linux containers.

```Dockerfile
# These ARGs allow for swapping out the base used to make the final image when debugging from VS
ARG LAUNCHING_FROM_VS
# This sets the base image for final, but only if LAUNCHING_FROM_VS has been defined
ARG FINAL_BASE_IMAGE=${LAUNCHING_FROM_VS:+aotdebug}

# ... (other stages omitted)

# This stage is used as the base for the final stage when launching from VS to support debugging in regular mode (Default when not using the Debug configuration)
FROM base as aotdebug
USER root
# Install GDB to support native debugging
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
gdb
USER app

# This stage is used in production or when running from VS in regular mode (Default when not using the Debug configuration)
FROM ${FINAL_BASE_IMAGE:-mcr.microsoft.com/dotnet/runtime-deps:8.0} AS final
WORKDIR /app
EXPOSE 8080
COPY --from=publish /app/publish .
ENTRYPOINT ["./WebApplication1"]
```

You can use `aotstage` in the Dockerfile to customize the image used at debug time, without affecting the final image used when not launching from Visual Studio, or in production. For example, you could install a tool for use only during debugging.

:::moniker-end

### MSBuild

::: moniker range=">=vs-2022"
Expand Down
172 changes: 96 additions & 76 deletions docs/ide/customizing-window-layouts-in-visual-studio.md

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Add references in the Reference Manager
description: Use the Reference Manager in Visual Studio to add and manage references to components that you, Microsoft, or another company developed.
ms.date: 10/31/2023
ms.date: 08/22/2024
ms.topic: how-to
f1_keywords:
- VS.ReferenceManager
Expand All @@ -26,6 +26,8 @@ ms.subservice: general-ide

You can use the Reference Manager dialog box to add and manage references to components that you, Microsoft, or another company developed. If you're developing a Universal Windows app, your project automatically references all of the correct Windows SDK DLLs. When you create a .NET project, your project automatically references the components it needs, such as the .NET SDK, but you need to add references as you add functionality. Some .NET APIs are exposed in components that you have to add manually. References to COM components or custom components have to be added manually.

If a NuGet package is available for the library you're referencing, use the NuGet Package Manager. See [Install and use a NuGet package](/nuget/consume-packages/install-use-packages-visual-studio).

## Reference Manager dialog box

The Reference Manager dialog box shows different categories on the left side, depending on the project type:
Expand Down Expand Up @@ -63,7 +65,7 @@ The Reference Manager dialog box shows different categories on the left side, de
## Assemblies tab (.NET Framework only)

> [!NOTE]
> The **Assemblies** tab is not available for projects that target .NET Core, or .NET 5 and later, because assemblies for those projects are added either as NuGet packages, or are included by targeting a particular version of .NET. To see the referenced assemblies in a project, expand the **Dependencies** node in the project and look under **Frameworks**. From the **Dependencies** node, you can right-click to add or remove project references, or open the NuGet package browser to manage NuGet packages. See [Install and manage packages in Visual Studio using the NuGet Package Manager](/nuget/consume-packages/install-use-packages-visual-studio) in the NuGet documentation.
> The **Assemblies** tab is not available for projects that target .NET Core, or .NET 5 and later. Select **Browse** to find an assembly in the filesystem and add it as a reference. To see the referenced assemblies in a project, expand the **Dependencies** node in the project. From the **Dependencies** node, you can right-click to add or remove project references, view or remove assemblies in the **Assemblies** node, or open the NuGet package browser to manage NuGet packages. See [Install and manage packages in Visual Studio using the NuGet Package Manager](/nuget/consume-packages/install-use-packages-visual-studio) in the NuGet documentation.

For .NET Framework projects, the **Assemblies** tab lists all .NET assemblies that are available for referencing. The **Assemblies** tab doesn't list any assemblies from the global assembly cache (GAC) because assemblies in the GAC are part of the run-time environment. If you deploy or copy an application that contains a reference to an assembly that's registered in the GAC, the assembly isn't deployed or copied with the application, regardless of the **Copy Local** setting. For more information, see [Manage references in a project](../ide/managing-references-in-a-project.md).

Expand Down Expand Up @@ -182,7 +184,7 @@ If a project type doesn't support COM, the tab doesn't appear in the Reference M

## Browse

You can use the **Browse** button to browse for a component in the file system.
You can use the **Browse** button to browse for a component or assembly in the file system.

A project can reference a component that targets a different framework version. For example, you could create an application that targets .NET Framework 4.7.2 but references a component that targets .NET Framework 4. For more information, see [Framework targeting overview](../ide/visual-studio-multi-targeting-overview.md).

Expand Down
Binary file modified docs/ide/media/document-window-guide-diamond.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/ide/media/vs-2022/color-tabs-personalize-schemes.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/ide/media/vs-2022/color-tabs-vertical.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/ide/media/vs-2022/custom-tab-organization-sml.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/ide/media/vs-2022/tabs-multiple-rows-sml.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ ms.service: visual-studio
ms.subservice: unreal-engine-tools
author: TylerMSFT
ms.author: TWhitney
manager: MarkL
manager: Coxford
#customer intent: As a C++ game developer using Unreal Engine and Visual Studio, I want to add classes, modules, and plugins to my Unreal Engine project from within Visual Studio so that I can stay in my development environment and not have to switch between the Unreal Engine Editor and Visual Studio.
---

Expand Down
2 changes: 1 addition & 1 deletion gamedev/unreal/get-started/vs-tools-unreal-install.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ ms.subservice: unreal-engine-tools
ms.topic: get-started
author: "TylerMSFT"
ms.author: "twhitney"
manager: Markl
manager: Coxford
---

# Install Visual Studio Tools for Unreal Engine
Expand Down
15 changes: 13 additions & 2 deletions gamedev/unreal/get-started/vs-tools-unreal-logging.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
---
title: "View Unreal Engine logging in Visual Studio"
description: "Learn how to view Unreal Engine logs from within Visual Studio"
ms.date: 07/24/2024
ms.date: 08/22/2024
ms.topic: how-to
ms.service: visual-studio
ms.subservice: unreal-engine-tools
author: TylerMSFT
ms.author: TWhitney
manager: MarkL
manager: Coxford
#customer intent: As a C++ game developer using Unreal Engine and Visual Studio, I want to view Unreal Engine logging in Visual Studio so that I can see the logs without switching between the Unreal Editor and Visual Studio.
---

Expand Down Expand Up @@ -46,6 +46,17 @@ If you find the font color hard to read, you can adjust it under **Tools** > **O

Having the UE logging window open while you're debugging is convenient because you don't have to switch to the Unreal Editor to see them.

## Unreal Engine logging options

Starting with Visual Studio 2022 17.12, use **Tools** > **Options** > **Unreal Engine** to configure the Unreal Engine logging window. On the **General** tab, the following options for the Unreal Engine log window are available under **Log Tool Window**:

:::image type="content" source="../media/vs-unreal-engine-log-options.png" alt-text="A screenshot of the Unreal Engine Log window options.":::

- **Clear on Launch**: Clear the log window when the game is launched.
- **Remember filters**: Remember the filters you set in the log window when you close Visual Studio.
- **Request JSON messages**: Request that log entries in JSON format. JSON provides a structured format that is easy to parse and process programmatically. This makes it simpler to extract specific information from log messages, such as error details, timestamps, and other metadata.
- **Show automatically**: Show the log window automatically when the game is launched in Visual Studio.

## Related content

[Visual Studio Tools for Unreal Engine](./vs-tools-unreal-overview.md)\
Expand Down
2 changes: 1 addition & 1 deletion gamedev/unreal/get-started/vs-tools-unreal-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ ms.subservice: unreal-engine-tools
ms.topic: overview
author: "TylerMSFT"
ms.author: "twhitney"
manager: Markl
manager: Coxford
---

# Visual Studio Tools for Unreal Engine
Expand Down
16 changes: 13 additions & 3 deletions gamedev/unreal/get-started/vs-tools-unreal-quickstart.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
---
title: "Quickstart: Visual Studio Tools for Unreal Engine"
description: "Learn about Visual Studio Tools for Unreal Engine, a free Visual Studio extension that helps you develop games with Unreal Engine"
ms.date: 07/22/2024
ms.date: 08/23/2024
ms.topic: quickstart
ms.service: visual-studio
ms.subservice: unreal-engine-tools
author: TylerMSFT
ms.author: TWhitney
manager: MarkL
manager: Coxford
---

# Quickstart: Visual Studio Tools for Unreal Engine
Expand All @@ -30,7 +30,7 @@ Lyra is a sample game project for learning about Unreal Engine. See the **Downlo

After you download the game sample, update `LyraStarterGame.uproject` to use the Visual Studio Tools plugin. You could also do this in the Unreal Editor after loading the Lyra project from the main menu under **Edit** > **Plugins** and then find the *Visual Studio Integration Tools* plugin and check the box next to it.

As of Visual Studio 2022 version 17.7, the Visual Studio Tools for Unreal Engine plugin is included with the Unreal Engine installation. It's no longer required to view Unreal Engine Blueprints. If you have an earlier version of Visual Studio, follow these instructions to install the plugin manually. See [Install Visual Studio Tools for Unreal Engine](vs-tools-unreal-install.md) for installation instructions.
As of Visual Studio 2022 version 17.7, the Visual Studio Tools for Unreal Engine plugin is included with the Unreal Engine installation. It's no longer required to view Unreal Engine Blueprints. If you have an earlier version of Visual Studio, see [Install Visual Studio Tools for Unreal Engine](vs-tools-unreal-install.md) to install the plugin manually.

1. Open the `LyraStarterGame.uproject` file in a text editor. It's in the directory where you installed the game sample.
1. Add the following to the end of the `Plugins` section:
Expand All @@ -49,6 +49,16 @@ As of Visual Studio 2022 version 17.7, the Visual Studio Tools for Unreal Engine
:::image type="content" source="../media/unreal-engine-configuration-dropdown.png" alt-text="Screenshot of Visual Studio with the Solutions Configurations dropdown expanded and Development Editor selected.":::
1. From the Visual Studio main menu, choose **Build** > **Build Solution** to build the game.

## Build output window

The build output window in Visual Studio is where you can see the progress of the build and any errors or warnings that occur. You can open the build output window from the Visual Studio main menu via **View** > **Output**.

Starting in Visual Studio 2022 17.12, you can double-click on an absolute path to a file in the output window to open that file in Visual Studio. The source code must be part of the Visual Studio solution and the path in the output window must be an absolute path.

The following screenshot shows the output windows for a build of the LyraStarterGame sample. The user has double-clicked on the warning from `LyraCharacter.generated.h`. Because the absolute path to that file is provided, double-clicking it opened the file in the editor.

:::image type="content" source="../media/vs-unreal-engine-output-window.png" alt-text="A screenshot of the Visual Studio output window. The LyraCharacter.generated.h file is highlighted because the absolute path is specified and the user double-clicked it to open the LyrCharacter.generated.h file." lightbox="../media/vs-unreal-engine-output-window.png":::

## Unreal Engine toolbar

Visual Studio provides a toolbar that improves the Unreal Engine development integration experience in Visual Studio. The toolbar provides quick access to common UE tasks.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ ms.service: visual-studio
ms.subservice: unreal-engine-tools
author: TylerMSFT
ms.author: TWhitney
manager: MarkL
manager: Coxford
#customer intent: As a C++ game developer using Unreal Engine and Visual Studio, I want to view Unreal Engine Blueprints in Visual Studio so that I can see them without switching between the Unreal Editor and Visual Studio.
---

Expand Down
2 changes: 1 addition & 1 deletion gamedev/unreal/get-started/vs-tools-unreal-view-macros.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ ms.service: visual-studio
ms.subservice: unreal-engine-tools
author: TylerMSFT
ms.author: TWhitney
manager: MarkL
manager: Coxford
#customer intent: As a C++ game developer using Unreal Engine and Visual Studio, I want to learn how to view Unreal Engine macros in Visual Studio so that I can read them more easily.
---

Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified subscriptions/_img/admin-roles/add-admins.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified subscriptions/_img/connect-emails/connect-emails-button.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified subscriptions/_img/delete-license/delete-subscribers.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified subscriptions/_img/edit-license/select-subscriber.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.