Re: [WiX-users] Where does MSI store installed state

2015-01-09 Thread Phil Wilson
There a couple of questions in this thread.  Regarding what's
installed, don't trawl the registry looking for clues, trawl the
documentation instead. MsiEnumProducts() will list what's installed.
MsiGetProductInfo() will tell you details about a specific installed
product, just to use two examples of many. The p/invoke from managed
code isn't too difficult and there are p/invoke libraries out there if
you look. Pinvoke.net can help too:

http://www.pinvoke.net/default.aspx/msi.MsiEnumProducts

Upgrade table: An MSI file is a database you can access and modify
with SQL-like statements. It's basically a matter of using the
appropriate SQL once you get the surrounding framework in place. Start
with this kind of thing:

http://stackoverflow.com/questions/27634407/how-to-get-the-product-version-from-an-msi-file-without-installing-the-msi

and look for other examples that use MsiDabaseOpenView and so on, and
the SQL to delete, add or update tables.

---
Phil Wilson


On Fri, Jan 9, 2015 at 5:38 AM, Prantik prantik.sar...@grapecity.com wrote:
 Hi All,



 I am trying to find out something. I hope you can help. I was wondering how
 does the msi

 keep a track of the fact that the product  has already been installed. I
 will explain the issue in detail.

 For eg:- When I install product.msi with
 ProductCode={8AFF09B8-EA81-449E-9475-9567E7367314},

 it would create an entry in the registry
 @HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{8AF
 F09B8-EA81-449E-9475-9567E7367314}

 specifying the Displayname ,uninstallstring etc. If I delete this registry
 key then I do not see the entry for the product in the Add and Remove
 Programs.

 But if I run the msi again, it prompts for repair, change etc. I was
 wondering where is the data stored in the m/c specifying that the

 product is already installed if not in the registry. I was wondering if
 someone could point me at something.



 Regards,

 Prantik

 --
 Dive into the World of Parallel Programming! The Go Parallel Website,
 sponsored by Intel and developed in partnership with Slashdot Media, is your
 hub for all things parallel software development, from weekly thought
 leadership blogs to news, videos, case studies, tutorials and more. Take a
 look and join the conversation now. http://goparallel.sourceforge.net
 ___
 WiX-users mailing list
 WiX-users@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/wix-users

--
Dive into the World of Parallel Programming! The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


[WiX-users] Where does MSI store installed state

2015-01-09 Thread Prantik
Hi All,

 

I am trying to find out something. I hope you can help. I was wondering how
does the msi 

keep a track of the fact that the product  has already been installed. I
will explain the issue in detail.

For eg:- When I install product.msi with
ProductCode={8AFF09B8-EA81-449E-9475-9567E7367314},

it would create an entry in the registry
@HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{8AF
F09B8-EA81-449E-9475-9567E7367314}

specifying the Displayname ,uninstallstring etc. If I delete this registry
key then I do not see the entry for the product in the Add and Remove
Programs.

But if I run the msi again, it prompts for repair, change etc. I was
wondering where is the data stored in the m/c specifying that the

product is already installed if not in the registry. I was wondering if
someone could point me at something.

 

Regards,

Prantik

--
Dive into the World of Parallel Programming! The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Where does MSI store installed state

2015-01-09 Thread Prantik
Hello All,

 

I found that the entries are in the Windows Upgrade Table.

http://msdn.microsoft.com/en-us/library/aa372379%28v=vs.85%29.aspx

 

Is there a way to view this table from C# code and add or delete some
entries?

 

From: Prantik [mailto:prantik.sar...@grapecity.com] 
Sent: 09 January 2015 19:08
To: 'wix-users@lists.sourceforge.net'
Subject: Where does MSI store installed state

 

Hi All,

 

I am trying to find out something. I hope you can help. I was wondering how
does the msi 

keep a track of the fact that the product  has already been installed. I
will explain the issue in detail.

For eg:- When I install product.msi with
ProductCode={8AFF09B8-EA81-449E-9475-9567E7367314},

it would create an entry in the registry
@HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{8AF
F09B8-EA81-449E-9475-9567E7367314}

specifying the Displayname ,uninstallstring etc. If I delete this registry
key then I do not see the entry for the product in the Add and Remove
Programs.

But if I run the msi again, it prompts for repair, change etc. I was
wondering where is the data stored in the m/c specifying that the

product is already installed if not in the registry. I was wondering if
someone could point me at something.

 

Regards,

Prantik

--
Dive into the World of Parallel Programming! The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users