我試圖用聲明打開pdf文件如何檢查PDF閱讀器安裝Java
Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + "Sample.pdf");
。
但我沒有在我的系統中安裝pdf
閱讀器。所以當我執行這個程序時,什麼都沒有顯示。沒有例外來臨。如果Pdf
閱讀器未安裝在系統中,任何想法都會得到例外。如果已經安裝了Pdf
閱讀器,該程序正在運行完美。
我試圖用聲明打開pdf文件如何檢查PDF閱讀器安裝Java
Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + "Sample.pdf");
。
但我沒有在我的系統中安裝pdf
閱讀器。所以當我執行這個程序時,什麼都沒有顯示。沒有例外來臨。如果Pdf
閱讀器未安裝在系統中,任何想法都會得到例外。如果已經安裝了Pdf
閱讀器,該程序正在運行完美。
編輯
由於我以前的解決方案不起作用。這裏是另外一個,肯定會爲你工作:
try
{
File file = new File("Sample.pdf");
java.awt.Desktop.getDeskTop().open(file);
System.out.println("File opened successfully");
}catch(Exception ex)
{
System.out.println("Error occurred: "+ex);
}
對於你必須處理與註冊按鍵。
使用JNI來伎倆。
String productName = Advapi32Util.registryGetStringValue(
WinReg.HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion", "ProductName");
System.out.printf("Product Name: %s\n", productName);
我已經包括jna jar.but我找不到Advapi32Util jar文件。我試過Windows 64與64 bit.is有任何其他的jar需要? – Ami 2013-04-19 10:17:46
非常感謝你 – alenlee 2013-03-26 06:59:14
喜維沙爾它不工作。它來自if塊本身 – alenlee 2013-03-26 07:23:48
@alenlee:觀看我的更新.. – 2013-03-26 14:51:43