【发布时间】:2014-04-14 05:20:54
【问题描述】:
我搜索并只找到了答案的片段。 我正在构建用于在整个工作室分发的工具。 我有一个 .exe 命令行程序(一种转换资产格式的工具)作为资源包含在我的 VS 项目中。
基于另一个线程,我将包含的 .exe 的“复制到输出目录”属性设置为“如果较新则复制”;以便其他人安装时包含它。
现在我想通过传递一个内置命令行的字符串来调用这个可执行文件,带有参数,例如
“C:\path\to\myProgram.exe -inputFilename -outputFilename -options”
问题:C:\path\to\myProgram.exe 真正需要什么? 我的命令行可执行文件最终会安装在最终用户的机器上吗?
或者将其作为资源嵌入是否开辟了一种新的调用方式(使用 args)?
【问题讨论】:
-
一般来说,它与最终用户机器上的位置有关,但我不知道何时涉及嵌入式资源+1
-
看看stackoverflow.com/q/798655/299327。但是,作为一般规则,我不会将程序称为资源。你为什么要这样做?
-
如果您设置较新的副本,那么它不是嵌入式资源。它被复制到程序集所在的任何地方。如果你想知道程序集在哪里试试这个stackoverflow.com/questions/52797/…
-
或stackoverflow.com/questions/1658518/…,取决于你在做什么。请注意,您只是在复制您的 exe,而安装程序正在安装它。它不是嵌入式资源,而是完全不同的球类游戏
-
[编辑好吧,它不是真的嵌入] 我希望 C:\path\to\myProgram.exe 保证出现在一个已知位置,所以我可以可靠地调用它。如果有更好的方法,我等待开悟。
标签: c# command-line-arguments visual-c#-express-2010