<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Using MsiInv to gather information about what is installed on a computer</title><link>http://blogs.msdn.com/b/astebner/archive/2005/07/01/using-msiinv-to-gather-information-about-what-is-installed-on-a-computer.aspx</link><description>As I was reading one of the posts on Quan To's new blog , I noticed that someone posted a link to a tool named msiinv.exe on their tools page. This tool (which stands for MSI Inventory) wraps some of the publicly documented MSI APIs to provide information</description><dc:language>en-US</dc:language><generator>Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><item><title>re: Using MsiInv to gather information about what is installed on a computer</title><link>http://blogs.msdn.com/b/astebner/archive/2005/07/01/using-msiinv-to-gather-information-about-what-is-installed-on-a-computer.aspx#10151870</link><pubDate>Sun, 10 Apr 2011 22:30:36 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10151870</guid><dc:creator>Aaron Stebner</dc:creator><description>&lt;p&gt;Hi Badcop666 at hotmail dot com - I didn&amp;#39;t create the MsiInv tool. &amp;nbsp;I got permission from the person who did to post it and write about it. &amp;nbsp;I have access to the source code too though, so I took a look and it is just calling standard Windows Installer APIs such as MsiEnumProducts (&lt;a rel="nofollow" target="_new" href="http://msdn.microsoft.com/library/aa370101.aspx"&gt;msdn.microsoft.com/.../aa370101.aspx&lt;/a&gt;) to determine what is installed on the computer. &amp;nbsp;If you have any per-user MSIs or components installed on a computer, then it is definitely possible for you to get different results when running this tool with different domain logins.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10151870" width="1" height="1"&gt;</description></item><item><title>re: Using MsiInv to gather information about what is installed on a computer</title><link>http://blogs.msdn.com/b/astebner/archive/2005/07/01/using-msiinv-to-gather-information-about-what-is-installed-on-a-computer.aspx#10151241</link><pubDate>Fri, 08 Apr 2011 05:15:49 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10151241</guid><dc:creator>badcop666 at hotmail dot com</dc:creator><description>&lt;p&gt;Hi Aaron, I am using msiinv.exe to monitor a build server farm (ccnet). I get different results when I run under two different domain logins.&lt;/p&gt;
&lt;p&gt;I&amp;#39;m wondering if the API is returning msi entries visible to the user?&lt;/p&gt;
&lt;p&gt;I will try to confirm this - however, would appreciate some guidance from the author.&lt;/p&gt;
&lt;p&gt;thx. Appreciate the excellent tool!&lt;/p&gt;
&lt;p&gt;Andy, NZ&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10151241" width="1" height="1"&gt;</description></item><item><title>re: Using MsiInv to gather information about what is installed on a computer</title><link>http://blogs.msdn.com/b/astebner/archive/2005/07/01/using-msiinv-to-gather-information-about-what-is-installed-on-a-computer.aspx#10091070</link><pubDate>Mon, 15 Nov 2010 12:10:58 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10091070</guid><dc:creator>soyka</dc:creator><description>&lt;p&gt;Tried to upgrade SQL Express 2008 to 2008R2. For some reason the upgrade failed which left my server in a half way installed state. The above procedure helped me to get rid of both 2008 a 2008R2.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10091070" width="1" height="1"&gt;</description></item><item><title>re: Using MsiInv to gather information about what is installed on a computer</title><link>http://blogs.msdn.com/b/astebner/archive/2005/07/01/using-msiinv-to-gather-information-about-what-is-installed-on-a-computer.aspx#10033330</link><pubDate>Thu, 01 Jul 2010 09:25:49 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10033330</guid><dc:creator>Julia</dc:creator><description>&lt;p&gt;Thank you for excellent article! &lt;/p&gt;
&lt;p&gt;It was very-very helpfull for me (I had a big problem with uninstalling Visual Studio 2010 ultimate trial)&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10033330" width="1" height="1"&gt;</description></item><item><title>re: Using MsiInv to gather information about what is installed on a computer</title><link>http://blogs.msdn.com/b/astebner/archive/2005/07/01/using-msiinv-to-gather-information-about-what-is-installed-on-a-computer.aspx#9242316</link><pubDate>Fri, 19 Dec 2008 19:01:18 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9242316</guid><dc:creator>Aaron Stebner</dc:creator><description>&lt;p&gt;Hi Boivin - Windows Installer components are stored in an obfuscated manner in the registry, and I wouldn't recommend trying to manually modify any Windows Installer registry data because it is pretty easy to leave your system in an inconsistent state. &amp;nbsp;These component references aren't going to hurt anything - the worst thing I think could happen here is that if you install some product in the future with that same component in it, it could cause the component reference count to be one too high. &amp;nbsp;That isn't really going to affect anything, so overall it would probably be best to leave this as is and not try to manually fix it up.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9242316" width="1" height="1"&gt;</description></item><item><title>re: Using MsiInv to gather information about what is installed on a computer</title><link>http://blogs.msdn.com/b/astebner/archive/2005/07/01/using-msiinv-to-gather-information-about-what-is-installed-on-a-computer.aspx#9242214</link><pubDate>Fri, 19 Dec 2008 18:02:58 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9242214</guid><dc:creator>Boivin</dc:creator><description>&lt;p&gt;Hi Aaron.&lt;/p&gt;
&lt;p&gt;Thanks for your answer.&lt;/p&gt;
&lt;p&gt;For at least one soft (the one I'm concerned with), the orphaned component are not specified as 'Permanent' in the MSI (nor in the ISM as the package has been built with InstallShield 12).&lt;/p&gt;
&lt;p&gt;I'm afraid they remain because of a broken reference counter or something like that due to the way the MSI has been designed (unfortunately). Is there a way to remove them from the system? (without resinstalling the OS)&lt;/p&gt;
&lt;p&gt;I can't find the Component ID in the registry.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9242214" width="1" height="1"&gt;</description></item><item><title>re: Using MsiInv to gather information about what is installed on a computer</title><link>http://blogs.msdn.com/b/astebner/archive/2005/07/01/using-msiinv-to-gather-information-about-what-is-installed-on-a-computer.aspx#9239712</link><pubDate>Fri, 19 Dec 2008 05:27:46 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9239712</guid><dc:creator>Aaron Stebner</dc:creator><description>&lt;p&gt;Hi Boivin - Those orphaned components are from products that you had installed that had components that were marked as permanent (meaning they would not be removed during an uninstall). &amp;nbsp;My systems all have some components like that. &amp;nbsp;You should just leave them as is - if the product marked the components as permanent, they intended for them to be left behind on the system even after uninstalling the product.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9239712" width="1" height="1"&gt;</description></item><item><title>Removing orphaned Components when Product Code is {00000000-0000-0000-000000000000}</title><link>http://blogs.msdn.com/b/astebner/archive/2005/07/01/using-msiinv-to-gather-information-about-what-is-installed-on-a-computer.aspx#9236303</link><pubDate>Thu, 18 Dec 2008 17:56:48 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9236303</guid><dc:creator>Boivin</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;msiinv -x gives me many orphaned Components whose ProductCode is {00000000-0000-0000-0000-000000000000}.&lt;/p&gt;
&lt;p&gt;Those components seems to come from various appli:&lt;/p&gt;
&lt;p&gt;Component {89476830-4393-4DB3-8330-773401C4EE50} has no parent product (permanent)&lt;/p&gt;
&lt;p&gt;	Product Code: {00000000-0000-0000-0000-000000000000}&lt;/p&gt;
&lt;p&gt;		Permanent Product placeholder.&lt;/p&gt;
&lt;p&gt;	Component path: C:\Program Files\MEGA\MEGA 2009\Demonstration\&lt;/p&gt;
&lt;p&gt;		File or directory not found.&lt;/p&gt;
&lt;p&gt;		Attributes: &lt;/p&gt;
&lt;p&gt;Component {A44402F0-AE37-45ED-9498-1094455D934B} has no parent product (permanent)&lt;/p&gt;
&lt;p&gt;	Product Code: {00000000-0000-0000-0000-000000000000}&lt;/p&gt;
&lt;p&gt;		Permanent Product placeholder.&lt;/p&gt;
&lt;p&gt;	Component path: C:\Program Files\palmOne\PhotoDesktop\ui\DGUI\img_Dialogs_vw.ui&lt;/p&gt;
&lt;p&gt;		File or directory not found.&lt;/p&gt;
&lt;p&gt;		Attributes: &lt;/p&gt;
&lt;p&gt;How can I remove those orphaned Components?&lt;/p&gt;
&lt;p&gt;I haven't dare to use MsiZapA.exe TW{00000000-0000-0000-000000000000}&lt;/p&gt;
&lt;p&gt;I fear it removes too many things.&lt;/p&gt;
&lt;p&gt;Any suggestions?&lt;/p&gt;
&lt;p&gt;Thanks in advance&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9236303" width="1" height="1"&gt;</description></item><item><title>re: Using MsiInv to gather information about what is installed on a computer</title><link>http://blogs.msdn.com/b/astebner/archive/2005/07/01/using-msiinv-to-gather-information-about-what-is-installed-on-a-computer.aspx#9177030</link><pubDate>Fri, 05 Dec 2008 00:41:39 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9177030</guid><dc:creator>dasharp</dc:creator><description>&lt;p&gt;I forgot to put the folder in output redirect. I found the file.&lt;/p&gt;
&lt;p&gt;Thanks.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9177030" width="1" height="1"&gt;</description></item><item><title>re: Using MsiInv to gather information about what is installed on a computer</title><link>http://blogs.msdn.com/b/astebner/archive/2005/07/01/using-msiinv-to-gather-information-about-what-is-installed-on-a-computer.aspx#9176442</link><pubDate>Thu, 04 Dec 2008 23:27:21 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9176442</guid><dc:creator>Aaron Stebner</dc:creator><description>&lt;p&gt;Hi Dasharp - I've seen these 1605 errors in the past on some systems. &amp;nbsp;They usually mean that there is some incorrect Windows Installer data somewhere in your registry. &amp;nbsp;However, I also looked at the code for this MsiInv tool and it should continue even after hitting errors like that and continue to list installed MSI-based products. &amp;nbsp;Are you sure it didn't list anything in the log file? &amp;nbsp;Are you looking in the right location on your file system for the log file to be produced?&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9176442" width="1" height="1"&gt;</description></item></channel></rss>