Visual Studio设置命令参数

3
我正在使用Visual Studio 2013。现在,我在一个解决方案中有几个C#和C++项目。在项目属性下,我可以添加一些调试属性。这很好用。但是当我在另一台电脑上运行Visual Studio解决方案时,命令参数被删除了。
如何定义默认的命令参数,以便在另一台电脑上运行该项目时也可用?

你检查过属性是否已保存吗?项目属性应该在保存后与项目一起保留。如果您在同一台计算机上关闭并重新打开解决方案,属性是否仍然存在?您是否在另一台计算机上运行解决方案中的相同项目(以及调试模式)? - James Gardner
谢谢您的回复。是的,如果我重新打开同一个项目,所有内容都在那里,但是如果我将项目从git拉到一个新文件夹中,配置就不再可用了。参数存储在哪个文件中? - user2644964
2
一些项目属性存储在PROJECTNAME.csproj.user文件中。我以为它们都在.csproj文件中,但似乎有些在.csproj.user文件中(我刚用“Debug-Command line arguments property”进行了检查)。这个文件可能被git忽略了。我不确定如何让所有属性保存到.csproj文件中。 - James Gardner
2个回答

2
如果您正在使用其他计算机进行调试,则应通过 config 文件设置参数,而不是在属性中设置参数。
假设以下是您的 config 文件(默认情况下为 App.config):
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<appSettings>
<add key ="key1" value ="Sample" />
</appSettings>
</configuration>

要获取key1的值,请使用ConfigurationManager.AppSettings["key1"];。您可以在<appSettings>标记中添加多个键。

谢谢您的回复。配置文件是如何工作的? - user2644964
在配置文件中设置所有变量,并使用 ConfigurationManager 读取它们。以下是一个示例: - Abhishek
谢谢,这个在C++项目中也可以使用吗? - user2644964
是的,如果你能找到一种读取 app.config 的方法。顺便说一句,如果你的问题得到了解答,你可以将其标记为答案。 - Abhishek
谢谢,我只是需要知道它们在哪里,而你间接地帮助我在编译的项目属性中找到了它们。 - Fiddy Bux

2

Visual Studio中的命令行参数仅用于调试目的,因此您有两个选项:

1)指示用户使用cmd运行应用程序(或提供脚本来运行应用程序)

或者

2)编写应用程序以接受一些缺失的参数,这样当没有传递参数时,将执行默认参数。


你所说的“脚本”,是指批处理文件或类似的东西吗? - user2644964
可以使用批处理或Python或任何您想要的工具,批处理的优点是在Windows上运行而无需安装任何东西。 - Zlatomir

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接