2010-05-04 29 views
4

我开发了小型跨平台(Windows和Mac)SWT桌面应用程序。它随WebStart一起分发。到目前为止好,一切正常。使WebStart Java桌面应用程序在Windows和Mac上的系统启动时启动

我有一个新的要求,使我的应用程序开始在系统启动(没有用户交互)。什么是最好的方式来实现这一目标?

JNLP文件中我有这样的:

<shortcut online="false"> 
    <desktop/> 
    <menu submenu="CompanyName"/> 
</shortcut> 

在Windows Webstart的创建桌面链接[app_name].lnk并将其指向 javaws.exe,然后一些Java缓存文件作为像..\Sun\Java\Deployment\cache\6.0\4\2c0a6a781-213476有趣的名字的参数。我可以编程的方式在用户的机器上按名称找到该链接......呃...然后将其复制到用户的Startup文件夹中。虽然用户可以一起禁用WebStart桌面快捷方式创建选项,但我可以在此处看到问题。

在Mac WebStart上弹出一个对话框,提示用户在哪里创建启动应用程序的位置[app_name].app(允许用户更改链接名称!)文件。在Mac上,我不知道Startup文件夹所在的位置(and it seems to be much more complex there)。

是否有Java库在那里,摘要在系统启动时启动应用程序在不同的平台上的概念,因为SWT用于GUI抽象?

回答

2

有,但它是非常新的,所以它不是广泛可用。

IntegrationService在1.6.0u18中引入。感兴趣的方法是requestShortcut

+0

我没有在系统启动时看到任何与*应用程序自动启动有关的内容,是否是正确的链接? – parxier 2010-05-04 03:34:08

+1

尝试requestShortcut(true,true,“启动”) – 2012-12-11 21:51:15

+0

有人试过这种方法吗?它是否也适用于mac os x?如果是这样,那么放什么而不是“启动”? – 2014-03-15 20:32:20

相关问题