如何确定我是否从Visual Studio IDE运行应用程序?

时间:2011-04-24 14:28:28

标签: visual-studio-2010 command-line-arguments

我编写了一个Winforms应用程序,它将以两种方式运行:

  1. 如果没有提供命令行参数,将显示应用程序的主要表单,用户可以与应用程序进行交互。

  2. 如果提供了命令行参数,则不显示主窗体,应用程序将执行命令行参数定义的操作,然后关闭。

  3. 如果应用程序是从Visual Studio IDE运行并且在Properties \ Debug页面中指定了命令行arugment,我还想在MessageBox中向用户显示命令行参数。

2 个答案:

答案 0 :(得分:3)

答案 1 :(得分:2)

如果您需要确定给定流程的“父流程”,这里有一个关于SO的链接:How to get parent process in .NET in managed way

话虽这么说,我要做的是将你的程序分成两部分:一个类库(一个DLL,它将包含你的程序所做的所有真正的东西)和一个引用这个类库的EXE。这样你就可以创建一个第三个项目作为VS Addin,它也会引用这个类库,但是会隐含地意识到它是从VS运行的。