我正在开发一个 java 应用程序。
我想为我的应用程序的 Exe 文件创建桌面快捷方式。
是否可以从我的应用程序本身中做到这一点?还是用户必须通过右键单击手动完成?
我正在开发一个 java 应用程序。
我想为我的应用程序的 Exe 文件创建桌面快捷方式。
是否可以从我的应用程序本身中做到这一点?还是用户必须通过右键单击手动完成?
package farzi;
import net.jimmc.jshortcut.JShellLink;
public class Sc {
JShellLink link;
String filePath;
public Sc() {
try {
link = new JShellLink();
filePath = JShellLink.getDirectory("")
+ "C:\\Program Files\\Internet Explorer\\iexplore.exe";
} catch (Exception e) {
}
}
public void createDesktopShortcut() {
try {
link.setFolder(JShellLink.getDirectory("desktop"));
link.setName("ie");
link.setPath(filePath);
link.save();
} catch (Exception ex) {
ex.printStackTrace();
}
}
public static void main(String a[]) {
Sc sc = new Sc();
sc.createDesktopShortcut();
}
}
你可以从这里得到罐子
Java Web Start 做到了这一点。您使用常规 main 方法编写常规应用程序,并使用扩展名为 .jnlp 的简短 XML 文件指向它。当用户单击 XML 文件的链接时,Java Web Start 将创建快捷方式,如果您的 XML 文件包含以下内容:
<information>
<!-- Other elements go here -->
<shortcut>
<desktop/>
</shortcut>
</information>
更多细节在这里。
这是一个相当古老的话题,但是我遇到了 Austin 的出色答案,并且在 NetBeans 中使用 jshortcut 时遇到了一些问题,但我担心这也可能会影响 Ecclipse。
s for this project. JShellLink looks at this folder on its own, so you don
无需将 DLL 的路径添加到任何路径,这在某些已关闭的机器上运行时可能会导致问题。Excert form jShellLink: /** 提供对 Java 快捷方式(shell 链接)的访问。* * 首次加载 JShellLink 时会加载本机库 (jshortcut.dll)。* 默认情况下,JShellLink 首先在 PATH 中查找本机库, * 使用 System.loadLibrary。* 如果在 PATH 中没有找到本机库, * JShellLink 然后查看 CLASSPATH 中的每个目录 *(由系统属性 java.class.path 的值确定)。* 如果 CLASSPATH 中的条目是 jar 文件, * 然后 JShellLink 在包含该 jar 文件的目录中查找本机库 *。* 应用程序可以覆盖此行为并强制 JShellLink 在特定目录中查找本机库,方法是将系统 * 属性 JSHORTCUT_HOME 设置为指向该目录。* 此属性必须在加载 JShellLink 类之前设置。* 这使得从自解压 jar 文件中使用这个库成为可能。*/