2015-11-24 4 views

ответ

0

Если это исполняемый файл (.exe, .com, .msi и т.д.), то вы можете попробовать что-то подобное в своей простейшей форме:

Здесь мы собираемся открыть в Блокноте Windows:

try { 
    Process p = Runtime.getRuntime().exec("notepad.exe"); 
} 
catch (IOException ex) { 
    //Do something here... 
} 

EDIT:

Существует большое различие между приложением Windows и PDF-файлом. Это, как правило, почему кто-то спрашивал «то, что вы пытаетесь открыть». PDF-файл представляет собой ассоциативный файл, который означает, что он может быть просмотрен или обработан с помощью определенного исполняемого приложения, например, файлы .txt просматриваются и обрабатываются через исполняемое приложение с именем NotePAD.exe.

Для просмотра ассоциативных файлов в операционной системе Windows вам необходимо убедиться, что ассоциативный файл фактически зарегистрирован (связан) с конкретным приложением, которое вы желаете. В вашем случае вы хотите открыть PDF-файл. Windows может иметь файлы PDF, связанные с приложением Viewer Only, которое не имеет никакой цели, если целью является фактическое редактирование PDF после его просмотра, как это было бы при использовании Adobe Acrobat. Вам должно быть ясно, что одна система может быть связана с одной и другой системой, связанной с другой.

Если вы хотите уточнить, какое приложение открывает ваш конкретный файл PDF, то первый пример, который я предоставил, будет работать нормально, поскольку почти все средства просмотра и редакторы PDF будут принимать командную строку, в которой вы можете поместить путь к вашему конкретному PDF-файл. Однако, если вы все еще настойчивее при использовании текущего окна соответствующего приложения, то вы можете сделать это следующим образом:

if (Desktop.isDesktopSupported()) { 
    try { 
     File myFile = new File("C:\\MyPDF_Files\\MyPDF.pdf"); 
     Desktop.getDesktop().open(myFile); 
    } 
    catch (IOException | IllegalArgumentException ex) { 
     JOptionPane.showMessageDialog(null, "Either there is no application found " 
      + "which is associatd with\nthe file you want to work with or the " 
      + "file doesn't exist!\n\n"+ filePath, 
      "File Association Warning", JOptionPane.WARNING_MESSAGE); 
    } 
} 

Я надеюсь, что это поможет вам немного.

+0

Хорошо, но в моем конкретном случае откройте внешнюю программу, такую ​​как Adobe Reader, чтобы просмотреть PDF. –

+0

Отредактировал свой ответ, чтобы разместить то, что вам нужно. – DevilsHnd

+0

Извините, могу ли я выразить себя плохо. Я разработал приложение Windows 8 в javascript и вам нужно открыть PDF-файл, но я не могу использовать PDF.js с холстом и ничего. Поэтому, судя по идее использовать программу из моего приложения, чтобы открыть этот pdf-файл, вот что мне нужно увидеть только в pdf-файле в моем приложении для Windows 8. –