如何在Visual Studio中多次启动同一项目
本文关键字:启动 项目 Visual Studio | 更新日期: 2023-09-27 18:30:15
如何在Visual Studio 2015中多次自动启动同一项目?
我知道你可以通过做来选择不同的项目。
转到"解决方案属性"-">通用属性"-"启动项目">然后选择"多个启动项目"
我还知道,您可以在解决方案资源管理器中右键单击它,然后选择"调试>启动新实例"以启动它的新副本。
但是我想启动同一个项目 5 次,我不想每次调试时重复上述 5 次步骤。
谢谢
您可以利用这样一个事实,即可以在解决方案中将可执行文件添加为"项目"。这是解决您问题的一个非常肮脏的解决方案:
- 在项目的后期生成步骤中,创建 4 个额外的.exe副本
- 只需构建一次项目。
- 将多个 .exe 添加为"项目"(右键单击文件夹>"添加>现有项目",然后逐个选择您的前任)
- 现在,您可以设置"多个启动项目"以启动所有5个"项目",并同时调试它们。
我怎样才能多次自动启动同一个项目......但是我想启动同一个项目 5 次,我不想每次调试时重复上述步骤 5 次
你不能。
但是,您可以按 Ctrl+F5 五次。 对我来说,这是Debug.Start的默认键盘快捷键,无需调试。
它比鼠标容易一些,但仍然是手动任务。
我终于找到了一个相对"不错"的解决方案,但它需要使用容器。我已经在二进制文件中添加了Docker支持,并为docker-compose添加了编排支持。现在,我可以在我的docker-compose.yml中执行此操作:
version: '3.4'
services:
myapp.myappd:
image: mcr.microsoft.com/dotnet/runtime:5.0-nanoserver-1903
depends_on:
- myapp.myappd.client
- myapp.myappd.server
myapp.myappd.server:
image: ${DOCKER_REGISTRY-}myappmyappd
environment:
- CONFIGFILE=config/config_server.txt
build:
context: .
dockerfile: Myapp.Myappd'Dockerfile
myapp.myappd.client:
image: ${DOCKER_REGISTRY-}myappmyappd
environment:
- CONFIGFILE=config/config_client.txt
build:
context: .
dockerfile: Myapp.Myappd'Dockerfile
每个服务都需要"构建"或"映像"。由于我只想运行我的应用程序 2 次(一次作为服务器,一次作为客户端),因此我指定了一些随机图像。诀窍是"depends_on",它会导致实际的客户端/服务器启动。在我的应用程序中,我使用 Environment.GetEnvironmentVariable("CONFIGFILE") 来区分客户端和服务器。
我刚刚更新了我的程序.cs winforms项目,以在单独的线程上生成表单,如下所示:
internal static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
// To customize application configuration such as set high DPI settings or default font,
// see https://aka.ms/applicationconfiguration.
ApplicationConfiguration.Initialize();
for(var i = 0; i < 3; i++){
var localI = i;
var thread = new Thread(() => {
var form = new Form1();
form.Left = form.Width * localI;
Application.Run(form);
});
thread.Start();
}
var resetEvent = new ManualResetEvent(false);
resetEvent.WaitOne(); // Just wait forever
}
}
您可以创建一个仅包含此程序的调试项目.cs仅用于在 VS 中启动 x 个实例以进行调试。然后你不会碰原始程序.cs在生产中你需要打开一个表单。