2012-03-22 3 views
0

Je veux ouvrir le fichier d'aide .chm lorsque vous cliquez sur le bouton Aide. Quand je le fais en éclipse, ça fonctionne bien. mais quand je crée le fichier jar exécutable puis son erreur donnant que "ne peut pas ouvrir le fichier". ceci est mon code:comment ouvrir le fichier d'aide dans le fichier exécutable jar

String path = Toolkit.getDefaultToolkit().getClass().getResource("/resources/UserAccountHelpNew.chm").getPath(); 

    String path1 = path.substring(1); 
    System.out.println(path1); 

    try { 
     Process process = Runtime.getRuntime().exec("hh.exe "+path1); 
     process.waitFor(); 
    } catch (InterruptedException e) { 

     e.printStackTrace(); 
    } catch (IOException e) { 

     e.printStackTrace(); 
    } 

Répondre

1

HH.EXE ne peut pas ouvrir des fichiers dans un bocal. Vous devez soit écrire du code copier le contenu de Toolkit.getDefaultToolkit().getClass().getResource("/resources/UserAcountHelpNew.chm") à un emplacement sur le système de fichiers, ou distribuer ce fichier à côté du fichier exécutable.

La raison pour laquelle cela fonctionne dans Eclipse est que vous avez probablement le fichier sur le système de fichiers. Lorsque votre répertoire de travail change, hh.exe ne trouve plus le fichier.

+0

Je ne comprends pas ce que vous voulez dire – Vinay

+0

@Vinay Vérifiez la sortie de 'Toolkit.getDefaultToolkit(). GetClass(). GetResource ("/resources/UserAccountHelpNew.chm "). GetPath()' (par exemple '' System.out.println (Toolkit.getDefaultToolkit(). GetClass(). GetResource ("/ resources/UserAccountHelpNew.chm"). GetPath()) '). Notez que le chemin que vous obtenez ne pointe pas vers un fichier sur votre disque dur. –

+0

ouais je l'ai eu. mais alors que dois-je faire? comment puis-je l'ouvrir? – Vinay

Questions connexes