如何使用java检查outlook是否在系统中安装?

时间:2014-04-02 07:34:00

标签: java outlook

你好我正在搜索是否在系统中安装了outlook?我在Java工作。我找到了很少的链接,但我无法达到我的目标。我发现了一种方法  “键入officeType = Type.GetTypeFromProgID(”Outlook.Application“);”,但我不知道应该导入哪个包。 我写下面的代码,但它给了我错误。

  Type officeType = Type.GetTypeFromProgID("Outlook.Application");

 if (officeType == null)
 {
   // Outlook is not installed.   
  // Show message or alert that Outlook is not installed.
 }
else
{
    // Outlook is installed.    
    // Continue your work.
}

有助于解决此问题。提前谢谢......

1 个答案:

答案 0 :(得分:2)

每个软件在安装期间都会创建一个进入Windows注册表的条目。为了确定是否安装了任何软件,您需要在Windows机器中扫描和搜索注册表。您可以使用第三方Java API访问Windows注册表:jRegistryKey

示例程序:

package your.pkg;

import java.io.File;
import java.util.Iterator;

import ca.beq.util.win32.registry.RegistryKey;
import ca.beq.util.win32.registry.RootKey;

public class Test {

    public static void main(String... args) throws Exception {
        RegistryKey.initialize(Test.class.getResource("jRegistryKey.dll").getFile());
        RegistryKey key = new RegistryKey(RootKey.HKLM, "Software\\Microsoft\\Office\\<version>\\Outlook\\");
        for (Iterator<RegistryKey> subkeys = key.subkeys(); subkeys.hasNext();) {
            RegistryKey subkey = subkeys.next();
            System.out.println(subkey.getName()); // You need to check here if there's anything which matches "Mozilla FireFox".
        }
    }
}

希望这会对你有所帮助。