<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://msmvps.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>Martin Zugec blog : Development</title><link>http://msmvps.com/blogs/martinzugec/archive/tags/Development/default.aspx</link><description>Tags: Development</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP2 (Build: 40407.4157)</generator><item><title>Lnk, shortcuts - real disaster??</title><link>http://msmvps.com/blogs/martinzugec/archive/2008/05/29/lnk-shortcuts-real-disaster.aspx</link><pubDate>Thu, 29 May 2008 22:20:57 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1628947</guid><dc:creator>martin</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/martinzugec/rsscomments.aspx?PostID=1628947</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/martinzugec/commentapi.aspx?PostID=1628947</wfw:comment><comments>http://msmvps.com/blogs/martinzugec/archive/2008/05/29/lnk-shortcuts-real-disaster.aspx#comments</comments><description>&lt;p&gt;Maybe you noticed that one of my projects I would like to finish in summer is also offline shortcuts editor - and you probably think &amp;quot;why some editor when I can build shortcuts using Explorer?&amp;quot;... &lt;p&gt;Think twice - it&amp;#39;s not as easy as it looks like and you will be maybe surprised how many gotchas are there. &lt;p&gt;Problem with .lnk files is that they are WYSINWYG (What You See Is NOT What You Get). Windows is sometimes too &amp;quot;intelligent&amp;quot; - and it can be very, very annoying. &lt;p&gt; My blog is primarily focused on scripting, deployment and SBC - so I expect that my audience have also some experiences with this. And most people tried to create some shortcut and copy it somewhere else (you create shortcut to some drive letter on your PC and then copy it to desktop of all users for example). Problem is that together with shortcut you provide more information that you know - you provide also last successful resolution of that shortcut and you won&amp;#39;t see this information anywhere in properties of such shortcut. &lt;p&gt; Let me show you example. You map home drives of your users to H: drive. You want to have shortcut to H:\MyDocs on your desktop. So if you create shortcut to H:\MyDocs, then you just need to distribute it to all your workstations and its done. You open properties of this shortcut and you see that it points to H:\MyDocs, so it should work everywhere, right? &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;WRONG - don&amp;#39;t forget, Windows can be sometimes unpredictable ;) If you open properties of your .lnk file, you can see that it is (still) pointing to H:\MyDocs - however .lnk file also contains information that H:\MyDocs is in fact \\Servers\Administrator$\MyDocs and it will automatically open this folder even from different PC! Quite nasty, right?&lt;/p&gt; &lt;p&gt;And thats not all - try to remove that drive letter and open shortcut - because it remembers that location, it will automatically map H: to \\Servers\Administrator$\MyDocs&lt;/p&gt; &lt;p&gt;If you will try to map something else (\\Servers\Projects) to H: drive, Windows will surprise again - not only it will map that shortcut to different drive (X:), but it will also modify your shortcut so it is automatically changed from H:\MyDocs to X:\MyDocs... Which means that if you have 50 shortcuts pointing to H: drive, 1 accidental click can corrupt that shortcut for you.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;You can find many (well, not tons of, but still few of them exists) offline shortcuts editors, however most of them covers only situation I described above (and not of all them covers this). There are some bugs that are (as far as I know) not solved by any existing product - for example if you use variables to define your folders (for example %Programs% for D:\Programs), you WON&amp;#39;T be able to create such shortcut if variable is not defined. When you try to create it, C:\ prefix is automatically appended (so %Programs% is in fact pointing to C:\D:\Programs, which is invalid value). &lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Well, this was just quick overview why I want to have offline editor where all such bugs will be fixed (btw I already have first version of code and it works correctly there, so it must be something in Explorer itself)... There are tons of other bugs&amp;nbsp; - I will try to spend some time testing different results and share results with you. I am now very sorry Microsoft didn&amp;#39;t implement something like &lt;a href="http://www.fileinfo.net/extension/xlnk" target="_blank"&gt;XLNK&lt;/a&gt; in Windows Vista :(&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1628947" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Scripting/default.aspx">Scripting</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Development/default.aspx">Development</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Projects/default.aspx">Projects</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Utilities/default.aspx">Utilities</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Tips_2600_amp_3B00_Tricks/default.aspx">Tips&amp;amp;Tricks</category></item><item><title>SystemSherlockGUI - one package that rules them all ;)</title><link>http://msmvps.com/blogs/martinzugec/archive/2008/05/26/systemsherlockgui-one-package-that-rules-them-all.aspx</link><pubDate>Mon, 26 May 2008 20:42:13 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1627630</guid><dc:creator>martin</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/martinzugec/rsscomments.aspx?PostID=1627630</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/martinzugec/commentapi.aspx?PostID=1627630</wfw:comment><comments>http://msmvps.com/blogs/martinzugec/archive/2008/05/26/systemsherlockgui-one-package-that-rules-them-all.aspx#comments</comments><description>&lt;p&gt;Good news everyone - I just received email from Roger (a.k.a. Kephyr) - he is author of brilliant SystemSherlock. He allowed me to include SystemSherlock in one package with my GUI - so now you can download&amp;nbsp; one package with both GUI and command line interface :)&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;To remind you, SystemSherlock is snapshoting utility (like Regshot), that can track changes on your filesystem or registry... &lt;/p&gt; &lt;p&gt;Snapshoting is sometimes (often) better than using ProcMon\RegMon\FileMon - you only see real changes, no reads etc... So I prefer snapshoting when I for example want to find where in registry are some changes hapenning.&lt;/p&gt; &lt;p&gt;Compared to RegShot, SystemSherlock is I think much better - you can compare unlimited dumps (not only 1st &amp;amp; 2nd snapshot) and I like GUI more ;)&lt;/p&gt; &lt;p&gt;Download and enjoy :) &lt;/p&gt; &lt;p&gt;&lt;iframe style="border-right:#dde5e9 1px solid;padding-right:0px;padding-left:0px;border-top:#dde5e9 1px solid;padding-bottom:0px;margin:3px;border-left:#dde5e9 1px solid;width:240px;padding-top:0px;border-bottom:#dde5e9 1px solid;height:66px;background-color:#ffffff;" src="http://cid-6f6355ee6be5160e.skydrive.live.com/embedrowdetail.aspx/MyProjects/SystemSherlockGUI.zip" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;p&gt;P.S.: If you have any feature requests or bugs to report, feel free to contact me, I would like to keep SystemSherlock alive&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1627630" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Scripting/default.aspx">Scripting</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Development/default.aspx">Development</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Utilities/default.aspx">Utilities</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Tips_2600_amp_3B00_Tricks/default.aspx">Tips&amp;amp;Tricks</category></item><item><title>Elevator - command line</title><link>http://msmvps.com/blogs/martinzugec/archive/2008/05/19/elevator-command-line.aspx</link><pubDate>Mon, 19 May 2008 15:15:39 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1624362</guid><dc:creator>martin</dc:creator><slash:comments>5</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/martinzugec/rsscomments.aspx?PostID=1624362</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/martinzugec/commentapi.aspx?PostID=1624362</wfw:comment><comments>http://msmvps.com/blogs/martinzugec/archive/2008/05/19/elevator-command-line.aspx#comments</comments><description>&lt;p&gt;If you tried &lt;a href="http://msmvps.com/blogs/martinzugec/archive/2008/05/16/ignore-uac-for-specific-programs.aspx" target="_blank"&gt;elevator&lt;/a&gt;, you probably know that it is running thought context menu:&lt;/p&gt; &lt;p&gt;&lt;a href="http://msmvps.com/blogs/martinzugec/WindowsLiveWriter/Elevatorcommandline_F186/image_2.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" border="0" alt="image" src="http://msmvps.com/blogs/martinzugec/WindowsLiveWriter/Elevatorcommandline_F186/image_thumb.png" width="244" height="168" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;It is assigned only to exe files (if it is needed, I can extend it)... But sometimes you may want to change shortcut to &lt;strong&gt;always &lt;/strong&gt;run specific action using elevator.&lt;/p&gt; &lt;p&gt;In fact it is pretty easy - just run ElevatorRunner.exe with filename and parameters and you are all set :)&lt;/p&gt; &lt;p&gt;First parameter is executable you want to run and then any command line arguments you want to include. &lt;/p&gt; &lt;p&gt;For example if you want to elevate MMC.exe, simply runs &lt;em&gt;ElevatorRunner MMC.exe&lt;/em&gt; and thats it. &lt;/p&gt; &lt;p&gt;&lt;br /&gt;To also show example with command line parameters, this is command line I use to run Joost:&lt;br /&gt;&lt;em&gt;C:\Data\SkipUAC\ElevatorRunner.exe &amp;quot;C:\Program Files (x86)\Joost\xulrunner\tvprunner.exe&amp;quot; &amp;quot;C:\Program Files (x86)\Joost\application.ini&amp;quot;&lt;/em&gt;&lt;/p&gt; &lt;p&gt;&lt;em&gt;&lt;/em&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;In following screenshot you can see few examples:&lt;/p&gt; &lt;p&gt;&lt;a href="http://msmvps.com/blogs/martinzugec/WindowsLiveWriter/Elevatorcommandline_F186/image_6.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" border="0" alt="image" src="http://msmvps.com/blogs/martinzugec/WindowsLiveWriter/Elevatorcommandline_F186/image_thumb_2.png" width="244" height="125" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;It is also pretty easy to modify shortcuts to use Elevator:&lt;/p&gt; &lt;p&gt;&lt;a href="http://msmvps.com/blogs/martinzugec/WindowsLiveWriter/Elevatorcommandline_F186/image_8.png"&gt;&lt;img style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" border="0" alt="image" src="http://msmvps.com/blogs/martinzugec/WindowsLiveWriter/Elevatorcommandline_F186/image_thumb_3.png" width="174" height="244" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Martin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1624362" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Security/default.aspx">Security</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Development/default.aspx">Development</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Utilities/default.aspx">Utilities</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Tips_2600_amp_3B00_Tricks/default.aspx">Tips&amp;amp;Tricks</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Vista/default.aspx">Vista</category></item><item><title>SystemSherlock - snapshot using GUI or CMD</title><link>http://msmvps.com/blogs/martinzugec/archive/2008/05/17/systemsherlock-snapshot-using-gui-or-cmd.aspx</link><pubDate>Sat, 17 May 2008 21:32:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1623856</guid><dc:creator>martin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/martinzugec/rsscomments.aspx?PostID=1623856</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/martinzugec/commentapi.aspx?PostID=1623856</wfw:comment><comments>http://msmvps.com/blogs/martinzugec/archive/2008/05/17/systemsherlock-snapshot-using-gui-or-cmd.aspx#comments</comments><description>&lt;p&gt;Recently I wrote about &lt;a href="http://msmvps.com/blogs/martinzugec/archive/2008/05/14/make-snapshots-of-filesystem-and-registry-using-command-line.aspx" target="_blank"&gt;SystemSherlock Lite&lt;/a&gt; - really nice snapshoting tool that supports command line... I also posted &lt;a href="http://msmvps.com/blogs/martinzugec/archive/2008/05/15/utility-to-display-logs-from-systemsherlock-lite.aspx" target="_blank"&gt;small utility&lt;/a&gt; for parsing log files.&lt;/p&gt;
&lt;p&gt;After that I started to heavily use SystemSherlock - and I must say that it is really really great utility. Problem is that usually you want to have command line AND GUI interface - and SystemSherlock is cmd only :(&lt;/p&gt;
&lt;p&gt;So I decided to create wrapper around it - and for me combination of GUI and SystemSherlock is much better snapshoting tool than RegShot or InstallRite... &lt;/p&gt;
&lt;p&gt;SystemSherlock GUI consists of 3 different tabs - one for creating snapshots, second for comparing snapshots and third for displaying log files in friendly structure.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Create snapshot&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Below is GUI used for taking snapshots:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msmvps.com/blogs/martinzugec/WindowsLiveWriter/SystemSherlockGUImyfavoritealternativeto_C6B6/image_2.png"&gt;&lt;img style="BORDER-TOP-WIDTH:0px;BORDER-LEFT-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-RIGHT-WIDTH:0px;" border="0" alt="image" src="http://msmvps.com/blogs/martinzugec/WindowsLiveWriter/SystemSherlockGUImyfavoritealternativeto_C6B6/image_thumb.png" width="244" height="177" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;It allows you to create snapshot configuration, specify output file and also to include exclusion list if you want to ignore particular entries. This is configured snapshot for detecting HKCU and C:\Temp folder:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://msmvps.com/blogs/martinzugec/WindowsLiveWriter/SystemSherlockGUImyfavoritealternativeto_C6B6/image_4.png"&gt;&lt;img style="BORDER-TOP-WIDTH:0px;BORDER-LEFT-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-RIGHT-WIDTH:0px;" border="0" alt="image" src="http://msmvps.com/blogs/martinzugec/WindowsLiveWriter/SystemSherlockGUImyfavoritealternativeto_C6B6/image_thumb_1.png" width="244" height="177" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;I tried to implement quite logical interface, so there are feature like auto-suggest or auto-repair of entries (for example HKLM is automatically translated HKEY_LOCAL_MACHINE)... Another feature is that entry type is automatically detected (you can see it in video - I don&amp;#39;t select whether entry is registry or filesystem, it is automatically filled):&lt;/p&gt;
&lt;p&gt;Update: Embedded video from Jing doesn&amp;#39;t work :( So click on following &lt;a class="" href="http://www.screencast.com/users/Soulin/folders/Jing/media/80b932d9-3be0-40c5-831a-5735065945be" target="_blank"&gt;link&lt;/a&gt;&amp;nbsp;instead).&lt;/p&gt;
&lt;p&gt;Once you specified what you want to monitor, just click on create button - dump is automatically created. Then do whatever you want - and just click on Create button again. One of SystemSherlock advantages is that it allows you to create as many dumps as you want - you can even compare current dump with one created months ago...&lt;/p&gt;
&lt;p&gt;When finished, move to Compare snapshots tab.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Compare snapshots&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Below is screenshot of Compare snapshots tab:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msmvps.com/blogs/martinzugec/WindowsLiveWriter/SystemSherlockGUImyfavoritealternativeto_C6B6/image_6.png"&gt;&lt;img style="BORDER-RIGHT:0px;BORDER-TOP:0px;BORDER-LEFT:0px;BORDER-BOTTOM:0px;" border="0" alt="image" src="http://msmvps.com/blogs/martinzugec/WindowsLiveWriter/SystemSherlockGUImyfavoritealternativeto_C6B6/image_thumb_2.png" width="244" height="177" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;It is divided to two parts - on left you can see source dumps and on right target dumps. Source dumps are the ones that were taken first -&amp;nbsp; this is VERY important to understand that source must be always older. &lt;/p&gt;
&lt;p&gt;System Sherlock Lite can report unexpected results if you are not aware of this behavior - if you will swap source and target (so target will be older file and source will be newer file), results will be opposite (for example if you deleted folder between snapshots, it will report that this folder was created etc.). &lt;/p&gt;
&lt;p&gt;For this reason I implemented some logic to processing. When you select any file on left, ONLY newer files then selected are displayed on right.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Parse logs&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;When you compare two dumps, differences between these two entries are automatically displayed in GUI.&lt;/p&gt;
&lt;p&gt;Current version should be already functional, but I am sure that there will be some issues - after all, this is really first version I just finished. If you encounter any problems or you have some features requests, feel free to post them in comments - if nothing, I will at least respond (but probably also implement such changes). &lt;/p&gt;
&lt;p&gt;Advantages compared to RegShot:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Fully supports command line - can be scripted 
&lt;li&gt;Imho better GUI 
&lt;li&gt;Supports multiple dumps - not only comparison of 2 snapshots (easily review historical changes) 
&lt;li&gt;Exclusion list based on RegExes 
&lt;li&gt;GUI for reading log files&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;strong&gt;Download&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;iframe style="BORDER-RIGHT:#dde5e9 1px solid;PADDING-RIGHT:0px;PADDING-LEFT:0px;BORDER-TOP:#dde5e9 1px solid;PADDING-BOTTOM:0px;MARGIN:3px;BORDER-LEFT:#dde5e9 1px solid;WIDTH:240px;PADDING-TOP:0px;BORDER-BOTTOM:#dde5e9 1px solid;HEIGHT:66px;BACKGROUND-COLOR:#ffffff;" src="http://cid-6f6355ee6be5160e.skydrive.live.com/embedrowdetail.aspx/MyProjects/SystemSherlockGUI.exe" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1623856" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Deployment/default.aspx">Deployment</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Scripting/default.aspx">Scripting</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Development/default.aspx">Development</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Projects/default.aspx">Projects</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Utilities/default.aspx">Utilities</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Productivity/default.aspx">Productivity</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Tips_2600_amp_3B00_Tricks/default.aspx">Tips&amp;amp;Tricks</category></item><item><title>Utility to display logs from SystemSherlock Lite</title><link>http://msmvps.com/blogs/martinzugec/archive/2008/05/15/utility-to-display-logs-from-systemsherlock-lite.aspx</link><pubDate>Thu, 15 May 2008 10:29:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1622898</guid><dc:creator>martin</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/martinzugec/rsscomments.aspx?PostID=1622898</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/martinzugec/commentapi.aspx?PostID=1622898</wfw:comment><comments>http://msmvps.com/blogs/martinzugec/archive/2008/05/15/utility-to-display-logs-from-systemsherlock-lite.aspx#comments</comments><description>&lt;p&gt;As mentioned in my post about &lt;a class="" href="http://msmvps.com/blogs/martinzugec/archive/2008/05/14/make-snapshots-of-filesystem-and-registry-using-command-line.aspx" target="_blank"&gt;SystemSherlock Lite&lt;/a&gt;, I really love this tool after few days... Only problem I had is that it can take some time to realize what really happened - you need to read pretty big log files and you can spend precious time reading through temporary entries or documents and settings and miss one important entry saying that applications copied something to your System32 folder.&lt;/p&gt;
&lt;p&gt;I was playing with Sherlock yesterday and I spent lot of time parsing through log files generated by SystemSherlock. Then I spend 20 minutes writing some automated parser and I want to share with you ;)&lt;/p&gt;
&lt;p&gt;Usage is pretty simple - just click on Open log file, select your log file and output similar to following should appear:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msmvps.com/blogs/martinzugec/SystemSherlockReader.PNG"&gt;&lt;img src="http://msmvps.com/blogs/martinzugec/SystemSherlockReader.PNG" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I dont know what else to add - this utility is pretty simple, however can save your time ;) One more notice - log parse is able to handle also mixed logs (so if you have one log where you store different entries together with log output from SystemSherlock Lite, you can use it and it will only show entries from SystemSherlock Lite. &lt;/p&gt;
&lt;p&gt;Any comments, requests? Feel free to post comments...&lt;/p&gt;&lt;iframe style="BORDER-RIGHT:#dde5e9 1px solid;PADDING-RIGHT:0px;BORDER-TOP:#dde5e9 1px solid;PADDING-LEFT:0px;PADDING-BOTTOM:0px;MARGIN:3px;BORDER-LEFT:#dde5e9 1px solid;WIDTH:240px;PADDING-TOP:0px;BORDER-BOTTOM:#dde5e9 1px solid;HEIGHT:66px;BACKGROUND-COLOR:#ffffff;" src="http://cid-6f6355ee6be5160e.skydrive.live.com/embedrowdetail.aspx/MyProjects/SystemSherlockReader.exe" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1622898" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Scripting/default.aspx">Scripting</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Development/default.aspx">Development</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Projects/default.aspx">Projects</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Utilities/default.aspx">Utilities</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Productivity/default.aspx">Productivity</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Tips_2600_amp_3B00_Tricks/default.aspx">Tips&amp;amp;Tricks</category></item><item><title>System.OutOfMemory and random errors</title><link>http://msmvps.com/blogs/martinzugec/archive/2008/02/28/system-outofmemory-and-random-errors.aspx</link><pubDate>Thu, 28 Feb 2008 15:40:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1527073</guid><dc:creator>martin</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/martinzugec/rsscomments.aspx?PostID=1527073</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/martinzugec/commentapi.aspx?PostID=1527073</wfw:comment><comments>http://msmvps.com/blogs/martinzugec/archive/2008/02/28/system-outofmemory-and-random-errors.aspx#comments</comments><description>&lt;p&gt;One of my (read &amp;quot;created by me&amp;quot;) programs suddenly stopped working - to my surprise, for everyone else everything was working flawlessly - except me... &lt;/p&gt;
&lt;p&gt;&amp;nbsp;It was giving me range of random errors (most common was System.OutOfMemory), even when I run it through debugger, it was crashing on random lines with really strange errors (psadi.dll was not found...)... That was really strange. And it was really strange that all other .NET applications were working fine. Most of the time System.OutOfMemory was throwing when reading 5 text files (all of them contained 1 line of text) - come on, we are not in middle age, modern computer should be able to handle it ;)&lt;/p&gt;
&lt;p&gt;For all my applications (and many of my project) I really love to use Subversion - if you dont know it, drop me line and I will write some details about it.. I decided to revert to older version of application. &lt;/p&gt;
&lt;p&gt;Because I also wanted to keep my current version, I saved file under different file name - and tadaaa - it was working flawlessly again. Then I tried to rename also my latest version - and now it was running smoothly. So I checked HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options - this is the key where all debuggers etc are hooking to application processes (including my tool Hook Application)...&lt;/p&gt;
&lt;p&gt;&amp;nbsp;To my surprise MyApp.exe contained tons of subkeys with strange names like DangerousAPIs, Locks etc... I tried to rename this registry key - and application was working.. &lt;/p&gt;
&lt;p&gt;After small investigation I traced the root of problem to Application Verifier - and then I remembered that this week I had presentation where I showed also AppVerif - and I was presenting on my program.&lt;/p&gt;
&lt;p&gt;To make long story short - if your application works after you rename main exe, check Image File Execution Options registry key and maybe it will help you.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1527073" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Development/default.aspx">Development</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Compatibility/default.aspx">Compatibility</category></item><item><title>AD Groups overview</title><link>http://msmvps.com/blogs/martinzugec/archive/2007/12/20/ad-groups-overview.aspx</link><pubDate>Thu, 20 Dec 2007 13:54:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1407436</guid><dc:creator>martin</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/martinzugec/rsscomments.aspx?PostID=1407436</wfw:commentRss><wfw:comment xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://msmvps.com/blogs/martinzugec/commentapi.aspx?PostID=1407436</wfw:comment><comments>http://msmvps.com/blogs/martinzugec/archive/2007/12/20/ad-groups-overview.aspx#comments</comments><description>&lt;p&gt;So another small project is coming... Sometimes you need to get something from active directory. For example (because my environment is using groups heavily), I want to see relationships between different groups or I want to see my memberships - which groups I belong to (not just MemberOf, but also nested groups), but I also want to see how am I member of that groups... &lt;/p&gt;
&lt;p&gt;&amp;nbsp;That is why I wrote small utility called ADGO (AD Groups Overview), that is able to visually represents some data to you. For example I have user called ADGOTest. He is member of group ADGOTest_Group1 and this group is member of ADGOTest1, ADGOTest2 and ADGOTest3. &lt;/p&gt;
&lt;p&gt;After running ADGO, I selected Add group, Add and typed ADGOTest. After clicking OK button, following result will appear on screen:&lt;/p&gt;
&lt;p&gt;&lt;img height="88" alt="ADGO" src="http://msmvps.com/photos/restoredpictures/images/1407420/original.aspx" width="587" border="0" /&gt;&lt;/p&gt;
&lt;p&gt;You can use it with user accounts, but also with groups. I will post some additional details on how to use it, what can be done etc, however I think this tool could be really usefull for some people (and it is invaluable in cases when you want to consolidate). &lt;/p&gt;
&lt;p&gt;First version allows you to zoom in, zoom out, print, save, expand objects by doubleclicking on them etc... Really easiest way to understand is to try it:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;NO Installation needed, only .NET Framework 2.0&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Download &amp;amp; extract project&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Run ADGroupsOverview.exe&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Click on Add group&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Click on Add and select your username (mzugec for example). Or you can specify groups. You can add as many objects as you want.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Click on OK - relationships overview will be created automatically.&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;If you will like it (and please let me know by leaving comments), I will start adding new features (for example linking to published applications of Citrix, so you will see what and how is published and which groups got access).&lt;/p&gt;
&lt;p&gt;You can download it from my SkyDrive below.&lt;/p&gt;&lt;iframe style="BORDER-RIGHT:#dde5e9 1px solid;PADDING-RIGHT:0px;BORDER-TOP:#dde5e9 1px solid;PADDING-LEFT:0px;PADDING-BOTTOM:0px;MARGIN:3px;BORDER-LEFT:#dde5e9 1px solid;WIDTH:240px;PADDING-TOP:0px;BORDER-BOTTOM:#dde5e9 1px solid;HEIGHT:66px;BACKGROUND-COLOR:#ffffff;" src="http://cid-6f6355ee6be5160e.skydrive.live.com/embedrowdetail.aspx/MyProjects/ADGO" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Martin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1407436" width="1" height="1"&gt;</description><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Development/default.aspx">Development</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Active+Directory/default.aspx">Active Directory</category><category domain="http://msmvps.com/blogs/martinzugec/archive/tags/Projects/default.aspx">Projects</category></item></channel></rss>