Re: [WiX-users] Where can I find the installer that was used

2012-11-19 Thread tyler.w.reid

Phil,

Thank you so much I got all those functions PInvoked and working like a 
charm. Again thank you to everyone for all your wonderful help it is greatly 
appreciated.

Tyler Reid | Operations and Infrastructure | Accenture Software | PC Insurance
1807 Jones Street | Bolivar, MO 65613| USA
Office: +cc.xxx.xxx. | Fax: 417.777.3792
E-Mail: tyler.w.r...@accenture.commailto:tyler.w.r...@accenture.com | 
www.accenture.com/pcsoftwarehttp://www.accenture.com/pcsoftware




This message is for the designated recipient only and may contain privileged, 
proprietary, or otherwise private information. If you have received it in 
error, please notify the sender immediately and delete the original. Any other 
use of the e-mail by you is prohibited.

Where allowed by local law, electronic communications with Accenture and its 
affiliates, including e-mail and instant messaging (including content), may be 
scanned by our systems for the purposes of information security and assessment 
of internal compliance with Accenture policy.

__

www.accenture.com
--
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Where can I find the installer that was used.

2012-11-17 Thread Phil Wilson
You could indeed do something like this, but there is no need because there
are plenty of APIs to do this the correct way. 

Combining APIs like MsiEnumProducts, MsiEnumComponents and MsiEnumClients
will return the installed products, components, and the list of products
that own a particular component. This could be cross-referenced with the
list of files from the MSI file table to check that what's installed is what
is supposed to be installed. Going through the File table can get you to a
Component and a guid, MsiEnumClients will tell you what ProductCodes own the
component, and one of them may be the MSI file being analyzed. Then you can
do version comparison etc. I've done this before in a similar situation to
Tyler where there are many shared files and components from multiple
installed products and for any given file and its version it can often be
useful to know which of many MSI files it was installed from when many
shared components are being installed, uninstalled etc. 

Phil 

-Original Message-
From: Philip Patrick [mailto:patri...@varonis.com] 
Sent: Thursday, November 15, 2012 1:16 AM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Where can I find the installer that was used.

Another option is to find the path in registry, in the Installer key. You
will need to know the following information:
* Product Code (or Upgrade Code and then find all products installed for it)
* How to convert GUID to compressed Microsoft's format, which is used in
registry
* For which user it was installed - you will need SID of that user. If it
was installed for all users, then the SID will be S-1-5-18, which is just
Local System user.

The you will need to check LocalPackage value of the following key in
registry:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserD
ata\USER_SID_HERE\Products\COMPRESSED PRODUCT GUID\InstallProperties

For example, for Wix 3.6.3303.0, it is:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserD
ata\S-1-5-18\Products\67D42AC9D02003944BAA562A28737DA1\InstallProperties

Hope that helps.


-Original Message-
From: Rob Hamflett [mailto:rob_hamfl...@sn.scee.net]
Sent: Thursday, November 15, 2012 10:29
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] Where can I find the installer that was used.

Windows keeps a cached copy of the MSI in C:\Windows\Installer, if that's of
any help.  You could scan through the MSI files in there and check the
properties for the one you want.

Rob

On 14/11/2012 20:51, tyler.w.r...@accenture.com wrote:
 Hello all,

  I am trying to write an application that will go through the file
table in an msi and make sure the files on the system are the same version
and location. Basically a regression test for our installers. I have
everything good except I have no idea how to find the installer that was
used to install the product. Basically we use WIX and support multi-instance
and I need to know if there is an easy way to find the installer that was
used for a specific instance. In the registry I can find the product in the
Uninstall area and the closest thing to the installer in there is a
MsiExec.exe /X{myguid}.

 Tyler Reid | Operations and Infrastructure | Accenture Software | PC 
 Insurance
 1807 Jones Street | Bolivar, MO 65613| USA
 Office: +cc.xxx.xxx. | Fax: 417.777.3792
 E-Mail: tyler.w.r...@accenture.commailto:tyler.w.r...@accenture.com
 | www.accenture.com/pcsoftwarehttp://www.accenture.com/pcsoftware



 
 This message is for the designated recipient only and may contain
privileged, proprietary, or otherwise private information. If you have
received it in error, please notify the sender immediately and delete the
original. Any other use of the e-mail by you is prohibited.

 Where allowed by local law, electronic communications with Accenture and
its affiliates, including e-mail and instant messaging (including content),
may be scanned by our systems for the purposes of information security and
assessment of internal compliance with Accenture policy.

 __
 

 www.accenture.com
 --
  Monitor your physical, virtual and cloud infrastructure from 
 a single web console. Get in-depth insight into apps, servers, 
 databases, vmware, SAP, cloud infrastructure, etc. Download 30-day 
 Free Trial.
 Pricing starts from $795 for 25 servers or applications!
 http://p.sf.net/sfu/zoho_dev2dev_nov





--
Monitor your physical, virtual and cloud infrastructure from a single web
console. Get in-depth insight into apps, servers, databases, vmware, SAP,
cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu

Re: [WiX-users] Where can I find the installer that was used.

2012-11-15 Thread Rob Hamflett
Windows keeps a cached copy of the MSI in C:\Windows\Installer, if 
that's of any help.  You could scan through the MSI files in there and 
check the properties for the one you want.

Rob

On 14/11/2012 20:51, tyler.w.r...@accenture.com wrote:
 Hello all,

  I am trying to write an application that will go through the file 
 table in an msi and make sure the files on the system are the same version 
 and location. Basically a regression test for our installers. I have 
 everything good except I have no idea how to find the installer that was used 
 to install the product. Basically we use WIX and support multi-instance and I 
 need to know if there is an easy way to find the installer that was used for 
 a specific instance. In the registry I can find the product in the Uninstall 
 area and the closest thing to the installer in there is a MsiExec.exe 
 /X{myguid}.

 Tyler Reid | Operations and Infrastructure | Accenture Software | PC 
 Insurance
 1807 Jones Street | Bolivar, MO 65613| USA
 Office: +cc.xxx.xxx. | Fax: 417.777.3792
 E-Mail: tyler.w.r...@accenture.commailto:tyler.w.r...@accenture.com | 
 www.accenture.com/pcsoftwarehttp://www.accenture.com/pcsoftware



 
 This message is for the designated recipient only and may contain privileged, 
 proprietary, or otherwise private information. If you have received it in 
 error, please notify the sender immediately and delete the original. Any 
 other use of the e-mail by you is prohibited.

 Where allowed by local law, electronic communications with Accenture and its 
 affiliates, including e-mail and instant messaging (including content), may 
 be scanned by our systems for the purposes of information security and 
 assessment of internal compliance with Accenture policy.

 __

 www.accenture.com
 --
 Monitor your physical, virtual and cloud infrastructure from a single
 web console. Get in-depth insight into apps, servers, databases, vmware,
 SAP, cloud infrastructure, etc. Download 30-day Free Trial.
 Pricing starts from $795 for 25 servers or applications!
 http://p.sf.net/sfu/zoho_dev2dev_nov




--
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Where can I find the installer that was used.

2012-11-15 Thread Philip Patrick
Another option is to find the path in registry, in the Installer key. You will 
need to know the following information:
* Product Code (or Upgrade Code and then find all products installed for it)
* How to convert GUID to compressed Microsoft's format, which is used in 
registry
* For which user it was installed - you will need SID of that user. If it was 
installed for all users, then the SID will be S-1-5-18, which is just Local 
System user.

The you will need to check LocalPackage value of the following key in registry:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\USER_SID_HERE\Products\COMPRESSED
 PRODUCT GUID\InstallProperties

For example, for Wix 3.6.3303.0, it is:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\67D42AC9D02003944BAA562A28737DA1\InstallProperties

Hope that helps.


-Original Message-
From: Rob Hamflett [mailto:rob_hamfl...@sn.scee.net] 
Sent: Thursday, November 15, 2012 10:29
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] Where can I find the installer that was used.

Windows keeps a cached copy of the MSI in C:\Windows\Installer, if that's of 
any help.  You could scan through the MSI files in there and check the 
properties for the one you want.

Rob

On 14/11/2012 20:51, tyler.w.r...@accenture.com wrote:
 Hello all,

  I am trying to write an application that will go through the file 
 table in an msi and make sure the files on the system are the same version 
 and location. Basically a regression test for our installers. I have 
 everything good except I have no idea how to find the installer that was used 
 to install the product. Basically we use WIX and support multi-instance and I 
 need to know if there is an easy way to find the installer that was used for 
 a specific instance. In the registry I can find the product in the Uninstall 
 area and the closest thing to the installer in there is a MsiExec.exe 
 /X{myguid}.

 Tyler Reid | Operations and Infrastructure | Accenture Software | PC 
 Insurance
 1807 Jones Street | Bolivar, MO 65613| USA
 Office: +cc.xxx.xxx. | Fax: 417.777.3792
 E-Mail: tyler.w.r...@accenture.commailto:tyler.w.r...@accenture.com 
 | www.accenture.com/pcsoftwarehttp://www.accenture.com/pcsoftware



 
 This message is for the designated recipient only and may contain privileged, 
 proprietary, or otherwise private information. If you have received it in 
 error, please notify the sender immediately and delete the original. Any 
 other use of the e-mail by you is prohibited.

 Where allowed by local law, electronic communications with Accenture and its 
 affiliates, including e-mail and instant messaging (including content), may 
 be scanned by our systems for the purposes of information security and 
 assessment of internal compliance with Accenture policy.

 __
 

 www.accenture.com
 --
  Monitor your physical, virtual and cloud infrastructure from 
 a single web console. Get in-depth insight into apps, servers, 
 databases, vmware, SAP, cloud infrastructure, etc. Download 30-day 
 Free Trial.
 Pricing starts from $795 for 25 servers or applications!
 http://p.sf.net/sfu/zoho_dev2dev_nov




--
Monitor your physical, virtual and cloud infrastructure from a single web 
console. Get in-depth insight into apps, servers, databases, vmware, SAP, cloud 
infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

--
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Where can I find the installer that was used.

2012-11-15 Thread Peter Shirtcliffe
MsiGetProductInfoEx() can return the cached MSI location using an argument of
INSTALLPROPERTY_LOCALPACKAGE

We discussed doing something similar here once. I'm not convinced it's a
worthwhile exercise. You should rather test the functions of the software -
which you will be doing anyway. If a file is missing or the installer failed,
then the corresponding function will fail. All you're doing is testing if
Windows Installer is working, which is Microsoft's job, and it's very
reliable. An exception might be if you have lots of conditional installations
but that would still be brought to light by normal functional testing.
 
-Original Message-
From: Rob Hamflett [mailto:rob_hamfl...@sn.scee.net] 
Sent: 15 November 2012 08:29
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] Where can I find the installer that was used.

Windows keeps a cached copy of the MSI in C:\Windows\Installer, if that's of
any help.  You could scan through the MSI files in there and check the
properties for the one you want.

Rob

On 14/11/2012 20:51, tyler.w.r...@accenture.com wrote:
 Hello all,

  I am trying to write an application that will go through the file
table in an msi and make sure the files on the system are the same version
and location. Basically a regression test for our installers. I have
everything good except I have no idea how to find the installer that was used
to install the product. Basically we use WIX and support multi-instance and I
need to know if there is an easy way to find the installer that was used for
a specific instance. In the registry I can find the product in the Uninstall
area and the closest thing to the installer in there is a MsiExec.exe
/X{myguid}.

 Tyler Reid | Operations and Infrastructure | Accenture Software | PC 
 Insurance
 1807 Jones Street | Bolivar, MO 65613| USA
 Office: +cc.xxx.xxx. | Fax: 417.777.3792
 E-Mail: tyler.w.r...@accenture.commailto:tyler.w.r...@accenture.com 
 | www.accenture.com/pcsoftwarehttp://www.accenture.com/pcsoftware



 
 This message is for the designated recipient only and may contain
privileged, proprietary, or otherwise private information. If you have
received it in error, please notify the sender immediately and delete the
original. Any other use of the e-mail by you is prohibited.

 Where allowed by local law, electronic communications with Accenture and
its affiliates, including e-mail and instant messaging (including content),
may be scanned by our systems for the purposes of information security and
assessment of internal compliance with Accenture policy.

 __
 

 www.accenture.com
 --
  Monitor your physical, virtual and cloud infrastructure from 
 a single web console. Get in-depth insight into apps, servers, 
 databases, vmware, SAP, cloud infrastructure, etc. Download 30-day 
 Free Trial.
 Pricing starts from $795 for 25 servers or applications!
 http://p.sf.net/sfu/zoho_dev2dev_nov




-
-
Monitor your physical, virtual and cloud infrastructure from a single web
console. Get in-depth insight into apps, servers, databases, vmware, SAP,
cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users
SDL PLC confidential, all rights reserved.
If you are not the intended recipient of this mail SDL requests and requires 
that you delete it without acting upon or copying any of its contents, and we 
further request that you advise us.
SDL PLC is a public limited company registered in England and Wales.  
Registered number: 02675207.
Registered address: Globe House, Clivemont Road, Maidenhead, Berkshire SL6 7DY, 
UK.


--
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Where can I find the installer that was used.

2012-11-15 Thread Fyodor Koryazhkin
Hi,
This is not the trivial task. You should do the following to be most
accurate:
1. Find path to cached local msi (MsiOpenProduct function)
2. Enumerate all patches for that product (MsiEnumPatches function)
3. Extract transforms from every patch
4. Apply each transform to product database (according to patch sequence)
5. Query all installed components (some component may not be installed due
to several conditions)
5. Query files according to components.
6. Consider to query DuplicateFile and RemoveFile tables.

Even now the information may be not 100 % accurate for files that do not
have versions since those files can be changed during product operation and
this is valid.

Now think: do you really need this? Does the claimed aim worth the effort?
May be there is another architectural solution to reach your goal?

-- 
Regards,
Fyodor Koryazhkin..
--
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Where can I find the installer that was used.

2012-11-15 Thread tyler.w.reid
Thank you all so much for the wonderful answers. As many of you have pointed 
out this may be more trouble that it is worth. However the main reason we are 
doing this is not to validate that the correct files were laid down, but to 
validate that the correct files were upgraded to the correct version. Since we 
have to support multi-instance installs we had a huge problem where my 
predecessors forgot the multiinstance=yes attribute on components in our 
installers so upgrades were not working properly for us on the multiple 
instances. Therfore we are making this utility that we can run in our nightly 
testing to try and catch something like that long before a release comes up.

Tyler Reid | Operations and Infrastructure | Accenture Software | PC Insurance
1807 Jones Street | Bolivar, MO 65613| USA
Office: +cc.xxx.xxx. | Fax: 417.777.3792
E-Mail: tyler.w.r...@accenture.commailto:tyler.w.r...@accenture.com | 
www.accenture.com/pcsoftwarehttp://www.accenture.com/pcsoftware




This message is for the designated recipient only and may contain privileged, 
proprietary, or otherwise private information. If you have received it in 
error, please notify the sender immediately and delete the original. Any other 
use of the e-mail by you is prohibited.

Where allowed by local law, electronic communications with Accenture and its 
affiliates, including e-mail and instant messaging (including content), may be 
scanned by our systems for the purposes of information security and assessment 
of internal compliance with Accenture policy.

__

www.accenture.com
--
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


[WiX-users] Where can I find the installer that was used.

2012-11-14 Thread tyler.w.reid
Hello all,

I am trying to write an application that will go through the file table 
in an msi and make sure the files on the system are the same version and 
location. Basically a regression test for our installers. I have everything 
good except I have no idea how to find the installer that was used to install 
the product. Basically we use WIX and support multi-instance and I need to know 
if there is an easy way to find the installer that was used for a specific 
instance. In the registry I can find the product in the Uninstall area and the 
closest thing to the installer in there is a MsiExec.exe /X{myguid}.

Tyler Reid | Operations and Infrastructure | Accenture Software | PC Insurance
1807 Jones Street | Bolivar, MO 65613| USA
Office: +cc.xxx.xxx. | Fax: 417.777.3792
E-Mail: tyler.w.r...@accenture.commailto:tyler.w.r...@accenture.com | 
www.accenture.com/pcsoftwarehttp://www.accenture.com/pcsoftware




This message is for the designated recipient only and may contain privileged, 
proprietary, or otherwise private information. If you have received it in 
error, please notify the sender immediately and delete the original. Any other 
use of the e-mail by you is prohibited.

Where allowed by local law, electronic communications with Accenture and its 
affiliates, including e-mail and instant messaging (including content), may be 
scanned by our systems for the purposes of information security and assessment 
of internal compliance with Accenture policy.

__

www.accenture.com
--
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users