首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Windows注册表运行密钥

Windows注册表运行密钥
EN

Stack Overflow用户
提问于 2015-01-12 22:33:21
回答 1查看 2.8K关注 0票数 1

根据http://msdn.microsoft.com/en-au/library/aa376977(v=vs.85).aspx

“运行和RunOnce注册表项会导致每次用户登录时程序运行。键的数据值是命令行。”

然后,我是否能够用以下内容添加一个键:

  • 名称: MyName
  • 数据:START /MIN "Title" "cmd.exe" /c "@echo off && "C:\TestApplication.exe" -Arg1 "Arg2"

以启动我的控制台应用程序为目标,在"C:\TestApplication.exe"启动时使用参数"-Arg1 "Arg2""最小化?

我问是因为我似乎不能让它起作用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-12 23:35:34

这些文档具有误导性,但并非完全不正确。命令行直接传递给CreateProcess(),而不是传递给cmd.exe,因此cmd.exe内部的命令(如start )无效。这意味着您需要在命令行的开头添加cmd /c

最后还缺少一个引号,您不需要在cmd.exe周围加上引号。这样做是可行的:

代码语言:javascript
复制
cmd /c START /MIN "Title" cmd /c "@echo off && "C:\TestApp.exe" -Arg1 "Arg2""

但是,由于目标应用程序是一个可执行文件,而不是批处理文件,所以您也不需要@echo命令:

代码语言:javascript
复制
cmd /c START /MIN "Title" cmd /c ""C:\TestApp.exe" -Arg1 "Arg2""

(请注意,传递给/c的命令行从未回显。)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27911891

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档