我正在尝试使用Armix 3D(它使用Haxe作为后端)为一些年轻的家庭成员创建一个非常专业的“桌面环境”。基本上,它是Linux上的一体机界面,仅允许用户运行特定的程序和游戏。我有按钮事件链接到应该通过bash运行系统应用程序的功能。问题是我不知道如何通过Haxe调用bash(或任何其他类型的脚本/命令/程序)。
我尝试过在线搜索示例代码。我见过人们使用-cmd <command>
和Sys.command('<command>')
,但是我不确定如何使用这些命令,或者他们是否需要运行某些设置。
这将在Linux 64位上运行:
import Sys;
import iron.App;
import armory.system.Event;
import armory.trait.internal.CanvasScript;
...
// Notify on button click
Event.add("menu.Opera", runOpera);
});
}
function runOpera() {
Sys.command('bash opera');
// -cmd 'bash /usr/bin/opera';
}
}
我希望它仅启动Opera浏览器,因为我的“桌面环境”将非常频繁地使用浏览器。无论我尝试使用哪种方法启动应用程序,它都不会启动任何东西。使用Sys.command('<command>');
时出现此错误:
27: characters 3-14 : Accessing this field requires a system platform (php,neko,cpp,etc.)
当使用-cmd '<command>';
时,我得到:
28: characters 4-7 : Missing ;
我觉得我在这里弄糟了,但是我对Haxe语法没有先验知识。
[编辑] 我想指出的是,我到处都是,找不到从Haxe启动系统应用程序的可靠工具。