how can i check whether Office 2016 is installed or not? RRS feed


  • Hello,

    There are different ways for checking whether Outlook (or any other Office application) is installed or not.

    1. Check if the HKEY_CLASSES_ROOT\Outlook.Application key is present.

    2. Use the Type.GetTypeFromProgID method which gets the type associated with the specified program identifier (ProgID), returning null if an error is encountered while loading the Type.

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

    The code does much the same thing described in #1.

    3. Use the MSI API. The most sensible thing to look for would probably be the Outlook core component (OUTLOOK.EXE) itself. This component is not localized, so the component GUID will be the same across every language Office comes in.

    Because you won't know the Product Code easily, you can simply check the component's installation state by using MsiLocateComponent. The only thing you'll need in order to use this function is the actual component you're looking for. For example, for previous Outlook versions I have found the following values:

    Outlook 2007 - {0638C49D-BB8B-4CD1-B191-055E8F325736}

    Outlook 2010 32-bit - {CFF13DD8-6EF2-49EB-B265-E3BFC6501C1D}

    Outlook 2010 64-bit - {ECCC8A38-7855-46CA-88FB-3BAA7CD95E56}

    4. Check out the windows registry entries, for example:


    Friday, August 28, 2015 10:47 AM