......................................

Has anyone there really been able to create a precondition for o2003.msi?

There are many people who ask about this, but I cannot find anyone who really succeeded. I find some extremely complex solutions in which you need to fill out .cpp files for which this offer may or may not be provided. I even tried to execute one of them, but got a configuration error on the target machine ...: - (

If I do not install o2003.msi, my extended Office add-in will throw an exception because the office.dll file cannot be found. Therefore, I would very much like to include it in my installer.

And the second question, regardless of the result of the previous one: how about a machine with Office 2007? 02203.msi complains that Office 2003 is not installed, so it seems to me that I need to do a lot of things to create a working installer for the "common Office add-in" ... someone else going through the same nightmare?

Update. This seems to be the PIA for Office.Core / "office.dll", which is really the reason to get to the tracer machine. None of the “complex” solutions (which, as I know, I can get to work if I make some effort) tells how to detect this particular file, just a PIA for Word and Excel, and then some. In any case, they are still in place. This is office.dll, which is an important file to check and install o2003pia.msi, if it is not installed correctly!

+3
source share
3 answers

, , , , 2003 2007, #. , .

o2003pia o2007pia, :

2003: {91490409-6000-11D3-8CFE-0150048383C9}

2007: {50120000-1105-0000-0000-0000000FF1CE}

, API MSI, . 2003:

[DllImport("msi.dll")]
    private static extern MsiInstallState MsiQueryProductState
        (string productGuid);
    [DllImport("msi.dll")]
    private static extern uint MsiGetProductInfo
        (string productGuid, string propertyName, StringBuilder valueBuffer, ref Int32 bufferSize);

    bool IsPia2003Installed()
    {
        MsiInstallState state = MsiQueryProductState("{91490409-6000-11D3-8CFE-0150048383C9}");

        return (state == MsiInstallState.msiInstallStateDefault);
    }

(, Visual Studio?), " Windows", ProductCodes. , , PIA.

.

+2

, , O2003PIA.MSI O2007PIA.MSI :

O2003PIAProductCode = "{90409419-0006-3D11-C8EF-10054038389C}"

O2007PIAProductCode = "{00002105-5011-0000-0000-000000F01FEC}"

+1

? , - 02003pia.msi, o2007pia.msi , , , .

0

Source: https://habr.com/ru/post/1705455/


All Articles