为啥 atprogram 不能在批处理文件中工作?
Posted
技术标签:
【中文标题】为啥 atprogram 不能在批处理文件中工作?【英文标题】:Why is atprogram not working from within a batch file?为什么 atprogram 不能在批处理文件中工作? 【发布时间】:2017-01-30 18:55:55 【问题描述】:我正在使用专门为我工作的公司开发的嵌入式系统。我想使用 Atmel 的命令提示符对目标处理器进行编程,这非常简单。
但是,在未来,构建我们产品的技术人员会自己做,所以我想到了一个批处理文件,他们可以与脚本一起运行,以便为它们自动编程和检查代码。
这就是问题所在,我无法通过 *.bat 文件让它运行。 当我不这样做时,我只需启动 Atmel 控制台并输入
atprogram -i ...
我尝试过编写批处理文件,例如:
"C:\...\StudioCommandPrompt.exe" atprogram -i ...
这给了我结果atprogram is neither a file nor a program
我也尝试过:
START "C:\...\StudioCommandPrompt.exe" atprogram -i ...
然后程序在单独的提示符下启动,并产生与上述相同的错误。
cmets 中建议的空集:
START "" "C:\...\StudioCommandPrompt.exe" atprogram -i ...
给出与没有空集相同的结果。
有谁知道如何解决这个问题?
【问题讨论】:
你试过了吗:START "" "C:\...\AtmelCommandPrompt.exe" atprogram -i
。注意空引号。
@Squashman,谢谢您的回复。您建议的代码打开了一个新提示 StudioCommandPrompt。参数 atprogram -i ... 在展位提示中被忽略,焦点仍在第一个 cmd 窗口中。
在我们公司,开发人员使用 AVRStudio 为 AVR 控制器开发嵌入式软件。但是我们公司的用户不使用任何 Atmel 应用程序来对控制器进行编程。相反,我为用户创建了一个小包,其中包含一系列批处理文件,用于 5 个使用的 AVR 控制器和 AVRdude 作为编程工具,以及用于现在 3 个使用的程序员的 Jungo 驱动程序(2 个直接使用 USB,1 个通过仿真串行端口)。当然,我还写了一本小手册,如何为各种程序员安装驱动程序。批处理文件不言自明。
不要在问题中包含解决方案,而是为此提供答案...
【参考方案1】:
解决方案:
START "programTool" /B /WAIT "C:\...\atprogram.exe" -i ...
I.E.参考正确的软件(信用:http://www.avrfreaks.net/forum/just-run-programmerhobbss)
【讨论】:
以上是关于为啥 atprogram 不能在批处理文件中工作?的主要内容,如果未能解决你的问题,请参考以下文章
为啥 Task.Delay 不能在 Azure Function App 中工作?
为啥 MPMoviePlayerController 能在模拟器中工作,而不能在设备中工作?
为啥这个 jQuery AJAX PUT 可以在 Chrome 中工作,但不能在 FF 中工作