为啥 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 中工作

为啥 EnumWindows 不能在服务中工作?

为啥 SwiftUI ObservedObject 不能在列表行中工作?

Kivy:为啥 ScrollView 不能在 GridLayout 中工作?