我在做一个用C++设计的程序,可以在windows上运行,但我们的一些运行Mac的客户正在使用这个程序,因为它是通过交叉安装的。它在大多数情况下都工作得很好,但我们的电子邮件生成有一个问题。我写了代码来生成一个applescript,它将为mac创建一封电子邮件,但我在执行它时遇到了问题。
我尝试过的东西:
1)这个问题的答案:How can I execute a simple Applescript from a C++ program?系统命令似乎从未执行过。
2)我使用applescript创建了一个.app,当它运行时,它会执行我的邮件,生成applescript。我尝试使用ShellExecute()运行脚本和.app,但它将分别在AppleScript编辑器和WINE浏览器中打开脚本或.app。
我假设Crossover在其“瓶子”中创建的windows环境正在阻止我运行脚本或.app。有什么办法可以绕过这个问题并完成脚本或.app的运行吗?
发布于 2013-01-29 01:09:24
我找到的唯一有效的解决方案是创建助手.app来运行AppleScript来生成邮件,然后在.app内部的小程序上调用ShellExecute(),而不是调用.app本身。
代码如下所示:
ShellExecute(NULL,"open","<PATH TO .APP>/Contents/MacOS/applet",NULL,NULL,0);https://stackoverflow.com/questions/14526599
复制相似问题