Hi, Is there any way to detect that the user system does not have VS2005 SP1 runtime library installed from a C/C++ runtime ? Because if we can do that, then the program can run the vsredist_x86.exe to install the necessary library. Thanks ted
In what context? Add Remove Programs? From setup.exe bootstrapper for deployment projects? Your own program that's doing a check? -- Phil Wilson Definitive Guide to Windows Installer http://www.apress.com/book/view/1590592972 "Ted" wrote in message news:P_udnQC4wbXpONPVnZ2dnUVZ_szinZ2d@comcast.com... > Hi, > > Is there any way to detect that the user system does not have VS2005 SP1 > runtime library installed from a C/C++ runtime ? > > Because if we can do that, then the program can run the vsredist_x86.exe > to install the necessary library. > > Thanks > > ted >
We just want to be able to detect that in a runtime installation DLL (pure C++ code) so we can detect and install SP1 library, if possible. So far, we can install all COM/DLL registration in this way. Thanks, ted "Phil Wilson" wrote in message news:eSPULyyyIHA.5620@TK2MSFTNGP04.phx.gbl... > In what context? Add Remove Programs? From setup.exe bootstrapper for > deployment projects? Your own program that's doing a check? > -- > Phil Wilson > Definitive Guide to Windows Installer > http://www.apress.com/book/view/1590592972 >
In pure C++, include msiquery.h, link to msi.lib, and do a: MsiQueryProductState ( "{7299052B-02A4-4627-81F2-1818DA5D550D}") You'll get INSTALLSTATE_DEFAULT or (somewhat misnamed) INSTALLSTATE_ABSENT if the contained internal MSI file has been installed, specific to SP1. Ref: http://blogs.msdn.com/nikolad/archive/2007/04/02/workaround-for-using-vs2005-sp1-version-of-vcredist-exe-within-a-boostrapper-setup-exe.aspx -- Phil Wilson Definitive Guide to Windows Installer http://www.apress.com/book/view/1590592972 "Ted" wrote in message news:zqydnRYsp9cFb9PVnZ2dnUVZ_gydnZ2d@comcast.com... > We just want to be able to detect that in a runtime installation DLL (pure > C++ code) so we can detect and install SP1 library, if possible. So far, > we can install all COM/DLL registration in this way. > Thanks, ted > "Phil Wilson" wrote in message > news:eSPULyyyIHA.5620@TK2MSFTNGP04.phx.gbl... >> In what context? Add Remove Programs? From setup.exe bootstrapper for >> deployment projects? Your own program that's doing a check? >> -- >> Phil Wilson >> Definitive Guide to Windows Installer >> http://www.apress.com/book/view/1590592972 >> > >
Phil, thanks. That's exactly what I am looking for...to make a nice product. ted "Phil Wilson" wrote in message news:%23smyoK0yIHA.3680@TK2MSFTNGP05.phx.gbl... > In pure C++, include msiquery.h, link to msi.lib, and do a: > > MsiQueryProductState ( "{7299052B-02A4-4627-81F2-1818DA5D550D}") > > You'll get INSTALLSTATE_DEFAULT or (somewhat misnamed) INSTALLSTATE_ABSENT > if the contained internal MSI file has been installed, specific to SP1. > > Ref: > http://blogs.msdn.com/nikolad/archive/2007/04/02/workaround-for-using-vs2005-sp1-version-of-vcredist-exe-within-a-boostrapper-setup-exe.aspx > > -- > Phil Wilson > Definitive Guide to Windows Installer > http://www.apress.com/book/view/1590592972 > > > "Ted" wrote in message > news:zqydnRYsp9cFb9PVnZ2dnUVZ_gydnZ2d@comcast.com... >> We just want to be able to detect that in a runtime installation DLL >> (pure C++ code) so we can detect and install SP1 library, if possible. So >> far, we can install all COM/DLL registration in this way. >> Thanks, ted >> "Phil Wilson" wrote in message >> news:eSPULyyyIHA.5620@TK2MSFTNGP04.phx.gbl... >>> In what context? Add Remove Programs? From setup.exe bootstrapper for >>> deployment projects? Your own program that's doing a check? >>> -- >>> Phil Wilson >>> Definitive Guide to Windows Installer >>> http://www.apress.com/book/view/1590592972 >>> >> >> > >