<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-19817947</id><updated>2011-04-21T16:40:04.606-04:00</updated><title type='text'>Tiny Purple Fishes</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default?start-index=101&amp;max-results=100'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>105</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-19817947.post-5827425156580898134</id><published>2011-04-02T04:17:00.000-04:00</published><updated>2011-04-02T04:17:53.366-04:00</updated><title type='text'>Is this thing on?</title><content type='html'>With all the social network stuff and maintaining a couple other sites I pretty much forgot all about this blog. &amp;nbsp;Looking over past posts reminded me of things I hadn't thought about in a while. &amp;nbsp;Facebook, Twitter, etc. are great for you to leave a trail of streams of consciousness but they aren't particularly effective at capturing content other than photos.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A lot has happened since my last post nearly five years ago:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;My father passed away in 2009&lt;/li&gt;&lt;li&gt;I've gotten old. &amp;nbsp;At least I feel old. &amp;nbsp;The weight has got to go. &amp;nbsp;Sometimes I wonder if quitting smoking was such a good idea - I was a lot thinner then.&lt;/li&gt;&lt;li&gt;I need to wear glasses for certain things. &amp;nbsp;So far I haven't gone to see an eye doctor - I just get those drug store reading glasses.&lt;/li&gt;&lt;li&gt;I'm in a different band - Laughing Through Your Fingers - http://laughingthru.com - I'm really fortunate to be playing with these folks. &amp;nbsp;They are dear friends and way better musicians than I am.&lt;/li&gt;&lt;li&gt;Our dog Bonsai passed away in 2009&lt;/li&gt;&lt;li&gt;I play guitar a lot these days. &amp;nbsp;When the band isn't gigging, I sit in with folks when I can and play at local open mics, jams, etc.&lt;/li&gt;&lt;li&gt;New car, guitars, etc.&lt;/li&gt;&lt;li&gt;Somehow I ended up singing backup vocals - who thought that was a good idea? &amp;nbsp;I can't play or sing very well so doing them at the same time brings the fail.&lt;/li&gt;&lt;li&gt;People have pretty much stopped buying CDs. &amp;nbsp;In fact, they try not to pay for music at all.&lt;/li&gt;&lt;li&gt;I've switched teams at work - I was working on Visual Studio but a couple years ago I switched to working on our mobile OS which became Windows Phone 7&lt;/li&gt;&lt;li&gt;We finally got rid of Bush. &amp;nbsp;But we got Obama. &amp;nbsp;I suppose that's a trade up and definitely better than McCain but it's depressing to think this is the best we can do.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-5827425156580898134?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/5827425156580898134/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=5827425156580898134&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/5827425156580898134'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/5827425156580898134'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2011/04/is-this-thing-on.html' title='Is this thing on?'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-115812337692747902</id><published>2006-09-13T00:53:00.000-04:00</published><updated>2006-09-13T00:56:16.926-04:00</updated><title type='text'>Mopping Janet</title><content type='html'>That's my band's name.  I'll post the story behind the name one of these days.  Suffice it to say it involved alcohol and a blonde.&lt;br /&gt;&lt;br /&gt;For the past few months &lt;a href="http://chefdino.blogspot.com"&gt;Chefdino&lt;/a&gt; and I have been putting together a band.  The primary goal is to create original music.  We went through Craig's list here in Raleigh to put it together.&lt;br /&gt;&lt;br /&gt;I hadn't really started a band from scratch in years.  What an ordeal...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-115812337692747902?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/115812337692747902/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=115812337692747902&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/115812337692747902'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/115812337692747902'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/09/mopping-janet.html' title='Mopping Janet'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-115812312142994400</id><published>2006-09-13T00:33:00.000-04:00</published><updated>2006-09-13T00:53:19.436-04:00</updated><title type='text'>My wife turned 40</title><content type='html'>I suppose I shouldn't post a woman's age. Whoops. I did it anyhow. Heh.&lt;br /&gt;&lt;br /&gt;She turned 40 last Thursday. I wanted this birthday to be memorable in a fun way. So no serious gifts! That's not to say she didn't get some cool stuff, just no jewelry or appliances or anything that is overly typical for a birthday. I mostly went with a theme of getting her stuff she enjoyed growing up. So here's a run down of the goodies:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The kids each painted her a picture and I framed them - Nicholas did the family and Danny did a beach scene - very cool stuff!&lt;/li&gt;&lt;li&gt;Then the kids painted her a wooden stool - basically a really nice barstool type chair - she can use this in her own crafts work area. It's very colorful. Our kids rock!&lt;/li&gt;&lt;li&gt;Melissa was really into the pogo stick as a kid. She'd bounce up and down the stairs and all around the neighborhood. So I got her the &lt;a href="http://www.flybar.com/pages/home.html"&gt;FLYBAR 1200&lt;/a&gt;! This thing is a serious piece of hardware. It can go up to six feet in the air! Oh hell yes, this thing is cool!&lt;/li&gt;&lt;li&gt;She also really got into the hula hoop. In fact, she one the hula hoop contest at a large family affair a couple years ago. She smoked everyone. So naturally I got her several hula hoops. As it turns out I should have bought those online because they were sold out everywhere around here - I had to go to 8 stores to find them.&lt;/li&gt;&lt;li&gt;I got her a talking ALF doll. If you don't remember the show ALF then this will mean nothing to you. If you remember the show, you are probably already giggling. It's pretty funny. Our smaller dog wants to tear ALF to shreds. I think he gets pissed that ALF is always saying "here, kitty, kitty".&lt;/li&gt;&lt;li&gt;Then there were a bunch of things like a paddle ball set, kaleidoscope, etc.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;The day before her birthday the kids were so excited about the gifts that we gave them to her a day early - LOL.&lt;/p&gt;&lt;p&gt;We had a party on Saturday. It was a great crowd and a great time. It's really kickass to be surrounded by great people.&lt;/p&gt;&lt;p&gt;Oh, in keeping with the theme of things I had bought a ton of candy from our childhood era. You can get anything on the Internet. Stuff like wax lips, pixie stix, Zotz, Charms, bottle caps, those wax bottles with colored sugar water in them, etc. All the kids at the party went nuts with this stuff. It started off as a pretty big box full of candy. I couldn't believe how much those little monsters ate! I was lucky to get some Zotz!&lt;/p&gt;&lt;p&gt;Melissa had treater herself to a new outfit for the party. She looked great. Really great. &lt;/p&gt;&lt;p&gt;She had a blast. We had friends and family from out of town as well as some of the excellent folks we've come to know since we've moved to NC.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-115812312142994400?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/115812312142994400/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=115812312142994400&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/115812312142994400'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/115812312142994400'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/09/my-wife-turned-40.html' title='My wife turned 40'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-115755497987046656</id><published>2006-09-06T11:02:00.000-04:00</published><updated>2006-09-06T11:02:59.886-04:00</updated><title type='text'>Queensryche</title><content type='html'>My wife and I drove down to Myrtle Beach on Sunday to catch Queensryche at the House of Blues.  It was an "evening with" so no opening band - that was a good thing in this case because Queensryche kicked ass.  Geoff Tate brought it.  He sounded even better than last year (which I thought was great too).  The band was really tight.  The guitars sounded great.  They played both Mindcrime albums (I think in there entirety).  And they topped the night off with a nice encore of several of their other classic tunes.  All told they played for about 2.5 hrs or so.  Very impressive show. &lt;br /&gt;&lt;br /&gt;The House of Blues is not that big of a venue but it was PACKED.  The crowd reaction sounded like an arena - the crowd was LOUD.  There were a couple drunk a**holes near us that kept spilling drinks and bumping into us - so I farted.  Oh, and after the last tune Scott Rockenfield tossed a couple sticks out and of course people went diving for them and came up throwing punches - Scott just shook his head in disbelief and walked out.  What kind of moron throws down for a pair of drum sticks?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-115755497987046656?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/115755497987046656/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=115755497987046656&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/115755497987046656'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/115755497987046656'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/09/queensryche.html' title='Queensryche'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114766644187491485</id><published>2006-05-14T23:58:00.000-04:00</published><updated>2006-05-15T00:14:19.380-04:00</updated><title type='text'>Mother's Day</title><content type='html'>We had a full house today. My wife Melissa of course, our sons, my mom, Kat, Dino and their daughter Kayla, and Melissa's high school friend Karen with her daughter Laura. Everyone came over for lunch. I was popular with the ladies because I got them all flowers and cookies. My wife made a huge pot of my favorite soup and we broke some fresh french bread. Mom showed up with her killer orange pound cake.&lt;br /&gt;&lt;br /&gt;Melissa spent a lot of time making the soup - a delicious ham and bean soup with her own personal touches. I love it.&lt;br /&gt;&lt;br /&gt;After she got the beans soaking last night, started the stock, and everyone else went to bed (Karen and Laura were here for the weekend), Melissa came down and helped me untangle cables in the jam room. There were a LOT of cables and she was really helpful. It made a pretty tedious task fun because we got to just enjoy each other's company.&lt;br /&gt;&lt;br /&gt;This morning Melissa got the soup going and it cooked for hours. Yum. It was GOOD. Real GOOD.&lt;br /&gt;&lt;br /&gt;Ideally I would have been more helpful but I kept fading out today - I've had severe throat problems for a couple days and it really kicked my butt today.&lt;br /&gt;&lt;br /&gt;The kids made some very cool cards/drawings for Melissa and were pretty darn good today.&lt;br /&gt;&lt;br /&gt;It was a great day for me - Melissa I hope it was for you too.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114766644187491485?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114766644187491485/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114766644187491485&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114766644187491485'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114766644187491485'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/05/mothers-day.html' title='Mother&apos;s Day'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114766528095414530</id><published>2006-05-14T23:47:00.000-04:00</published><updated>2006-05-14T23:54:40.970-04:00</updated><title type='text'>HippieSound Inaugural Jam</title><content type='html'>No fanfare.  No hype.  We just kicked around some ideas for tunes today.&lt;br /&gt;&lt;br /&gt;Dino was over today with his wife and daughter celebrating Mother's Day (hope y'all had a good one by the way).  We snuck off down to the basement for a while and just fooled around with some bits and pieces of stuff for some songs.  We're both a bit rusty but who cares - it was fun! &lt;br /&gt;&lt;br /&gt;I just plugged my nylon string Godin guitar into the PA and started noodling song ideas.  Later I busted out the Taylor T5 and noodled some more.  Given a lull of any kind I tend to just move on to something else so we were all over the map.&lt;br /&gt;&lt;br /&gt;It's been funny to discover that despite a lot of common musical ground and our close ages that we really don't know many songs in common.  It's just as well, I want to do original music anyhow.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114766528095414530?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114766528095414530/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114766528095414530&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114766528095414530'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114766528095414530'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/05/hippiesound-inaugural-jam.html' title='HippieSound Inaugural Jam'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114732579480134502</id><published>2006-05-11T01:35:00.000-04:00</published><updated>2006-05-11T01:36:34.803-04:00</updated><title type='text'>Rumsfeld on War planning</title><content type='html'>Good ole Rummy...&lt;br /&gt;&lt;br /&gt;&lt;img src="http://hippietim.com/rumsfeld1.jpg"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114732579480134502?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114732579480134502/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114732579480134502&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114732579480134502'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114732579480134502'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/05/rumsfeld-on-war-planning.html' title='Rumsfeld on War planning'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114732535057613200</id><published>2006-05-11T01:27:00.000-04:00</published><updated>2006-05-11T01:29:10.593-04:00</updated><title type='text'>George Bush's Economic Plan</title><content type='html'>I think this sums it up.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://hippietim.com/bush1.jpg"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114732535057613200?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114732535057613200/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114732535057613200&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114732535057613200'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114732535057613200'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/05/george-bushs-economic-plan.html' title='George Bush&apos;s Economic Plan'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114662774606792499</id><published>2006-05-02T23:35:00.000-04:00</published><updated>2006-05-02T23:45:14.506-04:00</updated><title type='text'>Floyd Rose V24 Arrow Arrives!</title><content type='html'>&lt;a href="http://www.hackolutions.com/gear/currentgear/floydrosev24/floydrosev24%20(2).jpg"&gt;&lt;img style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand" alt="" src="http://www.hackolutions.com/gear/currentgear/floydrosev24/floydrosev24%20(2).jpg" border="0" /&gt;&lt;/a&gt;As I &lt;a href="http://hippietim.blogspot.com/2006/01/floyd-rose-v.html"&gt;mentioned back in January&lt;/a&gt;, I ordered a Floyd Rose V24 Arrow. I opted for a Korina one so I had to wait. The first one came soon but the wood grain looked like someone soiled a bed. I'm not kidding. Brian at Chuck Levin's basically said "dude, you don't want this - let me get you a different one". It was bad so I waited. Well it arrived about a week ago. It's smokin'! The guitar plays and sounds fantastic and just looks amazing.&lt;br /&gt;&lt;br /&gt;More pics are available &lt;a href="http://www.hackolutions.com/gear/currentgear/floydrosev24/floydrosev24.htm"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114662774606792499?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114662774606792499/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114662774606792499&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114662774606792499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114662774606792499'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/05/floyd-rose-v24-arrow-arrives.html' title='Floyd Rose V24 Arrow Arrives!'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114662717227748880</id><published>2006-05-02T23:25:00.000-04:00</published><updated>2006-05-02T23:32:52.300-04:00</updated><title type='text'>HippieSound Studios Done!</title><content type='html'>Ok, the construction has been done a while. I've just been a slacker and haven't posted to my blog in a while. The construction was wrapped up around April 12th. Since then I've done some additional painting and touchups and have slowly been moving gear into the rooms. Anyhow, here are some pics of the completed room back on the 12th or so.  A lot more pics are available here: &lt;a href="http://www.hippietim.com/Studio/Studio.htm"&gt;http://www.hippietim.com/Studio/Studio.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%204-11-2006%20(1).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%204-11-2006%20(1).jpg" border="0" /&gt;&lt;/a&gt; &lt;p&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%204-11-2006%20(3).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%204-11-2006%20(3).jpg" border="0" /&gt;&lt;/a&gt; &lt;p&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%204-11-2006%20(6).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%204-11-2006%20(6).jpg" border="0" /&gt;&lt;/a&gt; &lt;p&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%204-11-2006%20(11).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%204-11-2006%20(11).jpg" border="0" /&gt;&lt;/a&gt; &lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114662717227748880?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114662717227748880/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114662717227748880&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114662717227748880'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114662717227748880'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/05/hippiesound-studios-done.html' title='HippieSound Studios Done!'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114482499814467269</id><published>2006-04-12T02:54:00.000-04:00</published><updated>2006-04-12T03:03:20.093-04:00</updated><title type='text'>The Man Who Sold The World</title><content type='html'>YouTube has everything.  This is my favorite performance on any of the music contest shows ever.  Heck, this is one of my favorite performances by anyone ever.  I am very much looking forward to Jordis Unga's CD later this year.  Enjoy!  If you go to her &lt;a href="http://www.jordismusic.com/"&gt;web site&lt;/a&gt; you can hear a short clip of a song from her new disc.  It sounds great!&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="350"&gt;&lt;param name="movie" value="http://www.youtube.com/v/qZLv7t9BD2M"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/qZLv7t9BD2M" type="application/x-shockwave-flash" width="425" height="350"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114482499814467269?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114482499814467269/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114482499814467269&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114482499814467269'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114482499814467269'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/04/man-who-sold-world.html' title='The Man Who Sold The World'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114446386497696308</id><published>2006-04-07T22:36:00.000-04:00</published><updated>2006-04-07T22:37:44.990-04:00</updated><title type='text'>Bush joke</title><content type='html'>So Cheney goes into Bush's office and says "Mr. President, there was a car bomb and 300 Brazillians died".&lt;br /&gt;&lt;br /&gt;Bush says "how many people are in a brazillian?"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114446386497696308?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114446386497696308/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114446386497696308&amp;isPopup=true' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114446386497696308'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114446386497696308'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/04/bush-joke.html' title='Bush joke'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114443678286750525</id><published>2006-04-07T15:05:00.000-04:00</published><updated>2006-04-07T15:06:23.410-04:00</updated><title type='text'>Workflow for Team Foundation?</title><content type='html'>&lt;P&gt;We have a number of scenarios we'd like to enable in future releases of Visual Studio Team Foundation that would really benefit being part of a generalized workflow framework.&amp;nbsp; Things like code review/checkin processes, build release and staging, etc.&amp;nbsp; And no matter how many scenarios you cover, customers will always come up with more.&amp;nbsp; Building workflow into a system can be hard enough without having to make it extensible too.&amp;nbsp; Fortunately, Microsoft is working on the &lt;A href=" http://msdn.microsoft.com/winfx/reference/workflow/default.aspx"&gt;Windows Workflow Foundation&lt;/A&gt; as part of WinFX.&amp;nbsp; This looks very promising.&amp;nbsp; One of the folks&amp;nbsp;on the team, &lt;A href="http://blogs.msdn.com/markhsch/"&gt;Mark Schmidt&lt;/A&gt;,&amp;nbsp;has written an &lt;A href="http://blogs.msdn.com/markhsch/archive/2006/03/02/542596.aspx"&gt;authoring tool &lt;/A&gt;that looks interesting.&lt;/P&gt;&lt;br /&gt;&lt;P&gt;A company I worked for many years ago developed a huge workflow system for OS/2 and Unix so I've always been intrigued by this stuff.&amp;nbsp; It was ginormous and had all sorts of memory limits, usability was poor (it used lots of non-modal windows - and I mean lots), and everything was so darned generic that as a user you really had too much of the implementation exposed to you.&amp;nbsp; The problem is that it was a generalized engine that wasn't really a proper&amp;nbsp;API that had a GUI slapped on top of it.&amp;nbsp; When what you really want is an engine that manages the flows and allows you to build a tailored customer experience that is relevant for your scenarios.&lt;/P&gt;&lt;br /&gt;&lt;P&gt;Stay tuned...&lt;/P&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114443678286750525?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114443678286750525/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114443678286750525&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114443678286750525'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114443678286750525'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/04/workflow-for-team-foundation.html' title='Workflow for Team Foundation?'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114441989435163703</id><published>2006-04-07T10:14:00.000-04:00</published><updated>2007-09-17T08:31:12.223-04:00</updated><title type='text'>Musical Journey Part 7</title><content type='html'>My senior year in high school was a blast musically. The band with Eric, Steve, and Mike D. continued. We took on Chris Vernon as a singer. He was not the most versatile singer but he was good to jam with and a truly great guy. He was one of the funnest people I've ever been around. We continued playing Sabbath, Priest, Trower, The Cars, Pat Benatar, etc. We played keg parties and hung around with each other a lot. This was a great time really.&lt;br /&gt;&lt;br /&gt;Then it came time to play the high school talent show. Lots of obstacles here. First, I was in trouble for some reason or another and was on restriction of some sort. Eric pleaded the case to my dad that it was not fair to the rest of the band to miss the opportunity so my folks relented and I could play the show. Then the talent show committee (or whatever it was) said Mike D. couldn't play in the band because he didn't go to our high school. So I filled in on bass - it sucked because we couldn't play the more interesting tunes we had planned on. Also, I didn't know the bass parts for the tunes we did play beforehand so I had a quick crash course on the tunes. We pulled it off and basically rocked the house. Of course we lost to some girl that did a really boring Asian dance. What a bunch of BS!!! Still, the talent show led to us getting to play a couple more keg parties.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114441989435163703?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114441989435163703/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114441989435163703&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114441989435163703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114441989435163703'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/04/musical-journey-part-7.html' title='Musical Journey Part 7'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114384886793060641</id><published>2006-03-31T18:45:00.000-05:00</published><updated>2006-03-31T18:47:47.950-05:00</updated><title type='text'>Carvin HF2 Arrived!</title><content type='html'>It came today!&lt;br /&gt;&lt;a href="http://www.hackolutions.com/gear/currentgear/carvinhf2/carvinhf2.jpg"&gt;&lt;img style="MARGIN: 0px 10px 10px 0px; WIDTH: 320px; CURSOR: hand" alt="" src="http://www.hackolutions.com/gear/currentgear/carvinhf2/carvinhf2.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.hackolutions.com/gear/currentgear/carvinhf2/carvinhf2.htm"&gt;Lots more pictures and details!&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114384886793060641?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114384886793060641/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114384886793060641&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114384886793060641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114384886793060641'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/carvin-hf2-arrived.html' title='Carvin HF2 Arrived!'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114364979220452071</id><published>2006-03-29T11:29:00.000-05:00</published><updated>2006-03-29T11:55:02.190-05:00</updated><title type='text'>How to get the active Team Foundation Server and Project from an Add-In</title><content type='html'>&lt;p&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;Ed Hintz posted &lt;/span&gt;&lt;a href="http://blogs.msdn.com/edhintz/archive/2006/02/03/524312.aspx"&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;"How to Write a Team Foundation Version Control Add-in for Visual Studio"&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt; which is a great guide to writing an add-in to integrate with Team Foundation version control. I won't repeat that info her. If you want to do something that is related to the active Team Server and/or Project from within a VS Add-In or VSIP package then read on.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;First make sure you have a reference to Microsoft.VisualStudio.TeamFoundation - either follow Ed's steps to add them via the REG.EXE commands for convenience or load them using the Browse tab on the Add Reference dialog - in a default installation the assembly will be in "%programfiles%\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies".&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;Next add a using clause:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Courier New;font-size:10;color:blue;"&gt;using&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:10;"&gt; Microsoft.VisualStudio.TeamFoundation;&lt;/span&gt; &lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;Create a member variable in your &lt;span style="font-family:Courier New;font-size:85%;color:#008080;"&gt;Connect&lt;/span&gt; class for the &lt;span style="font-family:Courier New;"&gt;TeamFoundationServerExt&lt;/span&gt; object:&lt;/span&gt;&lt;/p&gt;&lt;span style="font-family:Courier New;font-size:10;color:blue;"&gt;private&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:10;"&gt; &lt;span style="color:teal;"&gt;TeamFoundationServerExt&lt;/span&gt; _tfsExt;&lt;/span&gt; &lt;p&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;In your &lt;span style="font-size:85%;"&gt;OnConnection&lt;/span&gt; method, initialize the &lt;span style="font-family:Courier New;"&gt;_tfsExt&lt;/span&gt; object:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Courier New;font-size:10;"&gt;_tfsExt = _applicationObject.GetObject(&lt;span style="color:maroon;"&gt;"Microsoft.VisualStudio.TeamFoundation.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:10;"&gt;&lt;span style="color:maroon;"&gt;TeamFoundationServerExt"&lt;/span&gt;) &lt;span style="color:blue;"&gt;as&lt;/span&gt; &lt;span style="color:teal;"&gt;TeamFoundationServerExt&lt;/span&gt;;&lt;/span&gt; &lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;The &lt;span style="color:teal;"&gt;&lt;span style="font-family:Courier New;color:#000000;"&gt;TeamFoundationServerExt &lt;/span&gt;&lt;/span&gt;object exposes two things:&lt;/span&gt;&lt;/p&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="font-family:Courier New;"&gt;ActiveProjectContext&lt;/span&gt; - a &lt;/span&gt;property of type &lt;span style="font-size:85%;color:#008080;"&gt;&lt;span style="font-family:Courier New;color:#000000;"&gt;ProjectContextExt&lt;/span&gt; &lt;/span&gt;which contains the active server and project&lt;span style="font-size:85%;"&gt; &lt;li&gt;&lt;span style="font-family:Courier New;"&gt;ProjectContextChanged&lt;/span&gt; - an &lt;/span&gt;event which is fired when the current project and/or server is changed&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;&lt;span style="font-family:Courier New;font-size:10;color:blue;"&gt;public&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:10;"&gt; &lt;span style="color:blue;"&gt;sealed&lt;/span&gt; &lt;span style="color:blue;"&gt;class&lt;/span&gt; &lt;span style="color:teal;"&gt;ProjectContextExt&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:10;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:10;"&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;string&lt;/span&gt; DomainName { &lt;span style="color:blue;"&gt;get&lt;/span&gt;; }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:10;"&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;string&lt;/span&gt; DomainUri { &lt;span style="color:blue;"&gt;get&lt;/span&gt;; }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:10;"&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;string&lt;/span&gt; ProjectName { &lt;span style="color:blue;"&gt;get&lt;/span&gt;; }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:10;"&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;string&lt;/span&gt; ProjectUri { &lt;span style="color:blue;"&gt;get&lt;/span&gt;; }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;font-size:10;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Verdana;font-size:85%;"&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Courier New;"&gt;DomainName&lt;/span&gt; is the display name of the current server and &lt;span style="font-family:Courier New;"&gt;DomainUri&lt;/span&gt; is the actual URI of the current server. And &lt;span style="font-family:Courier New;"&gt;ProjectName&lt;/span&gt; is the display name of the current server and &lt;span style="font-family:Courier New;"&gt;ProjectUri&lt;/span&gt; is the Team Project URI. Note that these values can be null if there is no active server or project.&lt;/p&gt;&lt;p&gt;Your ProjectContextChanged handler should look like this:&lt;/p&gt;&lt;span style="font-family:Courier New;font-size:10;color:blue;"&gt;void&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:10;"&gt; _tfsExt_ProjectContextChanged(&lt;span style="color:blue;"&gt;object&lt;/span&gt; sender, &lt;span style="color:teal;"&gt;EventArgs&lt;/span&gt; e)&lt;br /&gt;{&lt;br /&gt;}&lt;/span&gt; &lt;p&gt;Within your handler you requery the &lt;span style="font-family:Courier New;"&gt;ActiveProjectContext&lt;/span&gt; property of the &lt;span style="font-family:Courier New;"&gt;TeamFoundationServerExt&lt;/span&gt; object.&lt;/p&gt;&lt;p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114364979220452071?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114364979220452071/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114364979220452071&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114364979220452071'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114364979220452071'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/how-to-get-active-team-foundation.html' title='How to get the active Team Foundation Server and Project from an Add-In'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114364980818559280</id><published>2006-03-29T11:28:00.000-05:00</published><updated>2006-03-29T11:30:08.190-05:00</updated><title type='text'>Will Code For Food</title><content type='html'>&lt;P&gt;This article originally appeared in the Wall Street Journal several years ago.&amp;nbsp; It's come up from time to time at work and most folks find it to be an amusing tale so I figured I'd post this before I lose track of it.&lt;/P&gt;&lt;br /&gt;&lt;BLOCKQUOTE&gt;&lt;br /&gt;&lt;P&gt;In these dark days of dot-com despair, Web developer Brian Yangas never thought a practical joke would yield three job leads in an hour.&lt;BR&gt;&amp;nbsp;&lt;BR&gt;Recently Patrick Husting, eHome Inc.'s chief technology officer and co-founder, told Mr. Yangas and 30 of his co-workers at the company's Bellevue, Wash., tech office that the online real-estate brokerage would shut all of its 11 regional sales offices and lay off the employees there.&lt;/P&gt;&lt;br /&gt;&lt;P&gt;Only the tech office would remain open while eHome tried to sell its technology. But the company might run out of money, so Mr. Husting suggested the employees be prepared and start looking for other work.&lt;/P&gt;&lt;br /&gt;&lt;P&gt;Mr. Yangas, a self-described "quirky guy," didn't fix up his resume; he fixed up a cardboard sign. It read "Web Developer...dot-com went bust...will code for food (or options)...hungry -- sober."&lt;/P&gt;&lt;br /&gt;&lt;P&gt;He arrived at work at 8:30 the next morning, bundled against the November chill in a hardy brown twill jacket and baseball cap. Sign in hand, he strolled out to the nearby highway-exit ramp and waited to make his co-workers laugh as they arrived. Mr. Yangas, 31, hoped his joke would "relieve the anxiety," he says. "You know, lighten the mood."&lt;/P&gt;&lt;br /&gt;&lt;P&gt;For the first 10 minutes, passing drivers essentially ignored the avid foosball player. Then some of the commuters, most of whom he didn't recognize, "started to notice and laugh, so I thought I'd stay a bit longer," he says.&lt;/P&gt;&lt;br /&gt;&lt;P&gt;A man driving "maybe a Toyota" shouted "Cogenix is hiring!" Mr. Yangas recalls. Cogenix is a database-application and Web site maker based in nearby Redmond, Wash. About five minutes later, Cami Cole, an associate with information-technology recruiter Maxim Group, stopped and asked "Are you really a Web developer?" Mr. Yangas nodded, and Ms. Cole handed him a business card with the parting words, "I can get you a job."&lt;/P&gt;&lt;br /&gt;&lt;P&gt;After about 45 minutes, Mr. Yangas went inside to warm up. He came back out at 10am because his boss wanted a picture of the prank. While Mr. Yangas was waiting for Mr. Husting to find a camera, "a long-haired guy in a blue truck" yelled, "Go to Microsoft campus building D. Ask for Tim."&lt;/P&gt;&lt;br /&gt;&lt;P&gt;"I wasn't sure what to think about it at first," Mr. Yangas remembers, "but later that day, no one was doing any work," so he headed down to the Microsoft campus. "I thought, it's been a weird day so far; let's see what fate brings."&lt;/P&gt;&lt;br /&gt;&lt;P&gt;He found the D building on Microsoft's Red West campus. It was three or four stories high and Mr. Yangas, who had caught only a fleeting glimpse of his contact, worried he wouldn't find the right Tim.&lt;/P&gt;&lt;br /&gt;&lt;P&gt;But he did. With the help of a new receptionist who didn't know a soul in the building but did have access to a photo database of employees, Mr. Yangas located what he thought might be the right extension.&lt;/P&gt;&lt;br /&gt;&lt;P&gt;The receptionist called: "There's this guy down here who said you yelled to him on the street." Tim Noonan, a development manager for Microsoft's MSN Explorer group, came down to meet Mr. Yangas, took him back to his office and talked to him for 15 to 20 minutes before passing him on to other members of Mr. Noonan's team.&lt;/P&gt;&lt;br /&gt;&lt;P&gt;"We're always looking for good developers, so why not" talk with Mr. Yangas, Mr. Noonan says. "And if he's as good a developer as he is at coming up with this scheme then woo-hoo! We value creativity."&lt;/P&gt;&lt;br /&gt;&lt;P&gt;Mr. Yangas "was pretty excited" about the outcome: Mr. Noonan called him back for a second, formal interview a few weeks later. And yet another rolled around a week later. Among other things, he was asked to write code on a dry-erase board and was interviewed during lunch to see if he could answer tough questions while eating. The interview lasted nine hours.&lt;/P&gt;&lt;br /&gt;&lt;P&gt;Thursday brought good news. A human-resources representative called to say the company would be making him a job offer early in the new year, once "the numbers guy comes back from vacation."&lt;/P&gt;&lt;br /&gt;&lt;P&gt;Meanwhile, eHome hasn't shut down. Since the pre-Thanksgiving meeting, Mr. Yangas's current employer has decided to reposition itself as a technology company. EHome's Web site is up and running, the company is referring leads to former agents and receiving referral fees.&lt;/P&gt;&lt;br /&gt;&lt;P&gt;So Mr. Yangas, who has two kids and is paying off a home mortgage and a minivan, says he hasn't "gone back out" with his sign. He was encouraged by the job leads, he says, but, in fact, "I was actually kind of hoping for money."&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114364980818559280?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114364980818559280/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114364980818559280&amp;isPopup=true' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114364980818559280'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114364980818559280'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/will-code-for-food.html' title='Will Code For Food'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114357251510498774</id><published>2006-03-28T14:01:00.000-05:00</published><updated>2006-03-28T14:01:55.130-05:00</updated><title type='text'>The best thing you can get for your iPod</title><content type='html'>&lt;p&gt;The &lt;a href="http://www.bose.com/controller?event=VIEW_PRODUCT_PAGE_EVENT&amp;product=sounddock_multimedia_index&amp;amp;ck=0"&gt;Bose SoundDock&lt;/a&gt;.  Really.  It is way cool.  It is way expensive too but given the simplicity, elegance, and sound quality it is well worth it.  Too many iPod docking units have subwoofers, separate speakers, lots of switches, look clunky, etc.&lt;br /&gt;&lt;br /&gt;When I told my wife I was going to put a stereo in our living room that she had meticulously decorated she gave me a very skeptical look.  Then I brought the SoundDock home and she liked it pretty much from the get go - "you mean I just plug my iPod in and that's it?"  Yep.  And it charges the iPod as well so I/she can just grab it and go.  Since we got it we've had a lot of guests and pretty much everyone is amazed at the sound produced by that little gizmo.  I'm sure we've inspired a few iPod and Bose purchases.  The downside is that the SoundDock isn't very versatile - it just works with the iPod and that's it.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114357251510498774?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114357251510498774/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114357251510498774&amp;isPopup=true' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114357251510498774'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114357251510498774'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/best-thing-you-can-get-for-your-ipod.html' title='The best thing you can get for your iPod'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114356483414684165</id><published>2006-03-28T11:53:00.000-05:00</published><updated>2006-03-28T11:53:54.310-05:00</updated><title type='text'>HippieSound Studios Construction Week 6</title><content type='html'>Last week was a slow week for progress.  My contractor was called away on an emergency job for the better part of the week.  But he did get the bulk of the grid ceiling up - I know this is a bear because the ceiling is filled with regular insulation, then mineral fiber insulation, then really heavy duty suspended ceiling wire with 4x the number of supports because this is a HEAVY ceiling being 5/8" thick drywall tiles with mass load vinyl overlayment.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-26-2006%20(3).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-26-2006%20(3).jpg" border="0" /&gt;&lt;/a&gt;&lt;p&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-26-2006%20(5).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-26-2006%20(5).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This he helped me level the floor. I started to do it myself. This shit was supposed to be self leveling concrete. Um. Yeah. You level it yourSELF. Fuckers. I've done a bunch of construction work but have never used a trowel in my life. I didn't screw it up though because when he came over and helped me out we knocked it out pretty quick.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-26-2006%20(1).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-26-2006%20(1).jpg" border="0" /&gt;&lt;/a&gt;&lt;p&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-26-2006%20(6).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-26-2006%20(6).jpg" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114356483414684165?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114356483414684165/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114356483414684165&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114356483414684165'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114356483414684165'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/hippiesound-studios-construction-week_28.html' title='HippieSound Studios Construction Week 6'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114356435786888970</id><published>2006-03-28T11:45:00.000-05:00</published><updated>2006-03-28T11:45:58.666-05:00</updated><title type='text'>Flashing Dialogboxes</title><content type='html'>&lt;P&gt;This example demonstrates how to flash a dialog in the taskbar after performing a long running operation from the command line.&amp;nbsp; A good&amp;nbsp;example of how this is useful is in the VS Team Foundation version control toolset.&amp;nbsp; Naturally, it includes a command line utility (TF.EXE) to perform source control operations.&amp;nbsp; Sometimes these operations can be very lengthy and in the end result in a dialog box popping up - performing a lengthy GET operation that results in conflicts to resolve is a good example of when this would happen.&lt;/P&gt;&lt;br /&gt;&lt;P&gt;Our own UI framework does quite a bit more than this - this is just a scaled down example of what happens when a dialog is invoked from the command line.&amp;nbsp; Many of our dialogs end up getting displayed in Visual Studio, standalone Windows apps, Excel, the command line, etc.&amp;nbsp; So in our framework the method to show a modal dialog is actually virtual so the appropriate thing happens in each environment.&lt;/P&gt;&lt;br /&gt;&lt;DIV class=codeblock&gt;&lt;PRE&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Diagnostics;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Text;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Windows.Forms;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Runtime.InteropServices;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Threading;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;namespace&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; ConsoleFlasher&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;{&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;Program&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; Main(&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt;[] args)&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;Thread&lt;/SPAN&gt;.Sleep(5000); &lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; Lengthy operation... &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;using&lt;/SPAN&gt; (&lt;SPAN style="COLOR: teal"&gt;MyForm&lt;/SPAN&gt; form = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;MyForm&lt;/SPAN&gt;())&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;UIHost&lt;/SPAN&gt;.ShowModalDialog(form);&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;UIHost&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;DialogResult&lt;/SPAN&gt; ShowModalDialog(&lt;SPAN style="COLOR: teal"&gt;Form&lt;/SPAN&gt; form)&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;return&lt;/SPAN&gt; ShowModalDialog(form, &lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//********************************************************************************************&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: gray"&gt;///&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;&amp;lt;summary&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: gray"&gt;///&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt; Display a modal dialog a windows application.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: gray"&gt;///&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;&amp;lt;/summary&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: gray"&gt;///&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;&amp;lt;param name="form"&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;The form to display.&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;&amp;lt;/param&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: gray"&gt;///&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;&amp;lt;param name="parent"&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;The parent window for window stack ordering.&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;&amp;lt;/param&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//********************************************************************************************&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;DialogResult&lt;/SPAN&gt; ShowModalDialog(&lt;SPAN style="COLOR: teal"&gt;Form&lt;/SPAN&gt; form, &lt;SPAN style="COLOR: teal"&gt;IWin32Window&lt;/SPAN&gt; parent)&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;bool&lt;/SPAN&gt; isTopLevel = parent == &lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; form.ShowInTaskbar = isTopLevel;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;form.MinimizeBox = isTopLevel;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; form.ShowIcon = isTopLevel;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (isTopLevel)&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; Attach an event handler so maybe we'll flash the title in the taskbar&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; form.Activated += &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;EventHandler&lt;/SPAN&gt;(OnModalDialogFormActivate);&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; This is where you would also set your app icon on the dialog as well.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;DialogResult&lt;/SPAN&gt; result = form.ShowDialog(parent);&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (isTopLevel)&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; form.Activated -= &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;EventHandler&lt;/SPAN&gt;(OnModalDialogFormActivate);&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;return&lt;/SPAN&gt; result;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//********************************************************************************************&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: gray"&gt;///&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;&amp;lt;summary&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: gray"&gt;///&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt; On form activate for a modal dialog for the console.&amp;nbsp; We check to see if we are the &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: gray"&gt;///&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt; foreground window and flash the taskbar if we aren't.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: gray"&gt;///&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;&amp;lt;/summary&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: gray"&gt;///&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;&amp;lt;param name="sender"&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;Form to activate&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;&amp;lt;/param&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN style="COLOR: gray"&gt;///&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;&amp;lt;param name="e"&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;Standard event args&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;&amp;lt;/param&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//********************************************************************************************&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; OnModalDialogFormActivate(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: teal"&gt;EventArgs&lt;/SPAN&gt; e)&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN style="COLOR: teal"&gt;Form&lt;/SPAN&gt; form = sender &lt;SPAN style="COLOR: blue"&gt;as&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;Form&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (form != &lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;)&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;Debug&lt;/SPAN&gt;.Assert(form.Visible, &lt;SPAN style="COLOR: maroon"&gt;"Form should already be visible for FormActivate"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;IntPtr&lt;/SPAN&gt; foregroundHwnd = &lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;.GetForegroundWindow();&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; First see if we're in the foreground&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (foregroundHwnd != form.Handle)&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;IntPtr&lt;/SPAN&gt; consoleHwnd = &lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;.GetConsoleWindow();&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; We're not in the foreground so let's see if our console is.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (foregroundHwnd != consoleHwnd)&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; We're not in the foreground and neither is our console window so let's&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; flash the user.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; flashCount = 1;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; make sure we read the count from the system and respect this for accessibility&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;.SystemParametersInfo(&lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;.SPI_GETFOREGROUNDFLASHCOUNT, 0, &lt;SPAN style="COLOR: blue"&gt;ref&lt;/SPAN&gt; flashCount, 0);&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;.&lt;SPAN style="COLOR: teal"&gt;FLASHWINFO&lt;/SPAN&gt; fwi = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;.&lt;SPAN style="COLOR: teal"&gt;FLASHWINFO&lt;/SPAN&gt;();&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fwi.cbSize = (&lt;SPAN style="COLOR: teal"&gt;UInt32&lt;/SPAN&gt;)&lt;SPAN style="COLOR: teal"&gt;Marshal&lt;/SPAN&gt;.SizeOf(&lt;SPAN style="COLOR: blue"&gt;typeof&lt;/SPAN&gt;(&lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;.&lt;SPAN style="COLOR: teal"&gt;FLASHWINFO&lt;/SPAN&gt;));&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;fwi.dwFlags = &lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;.FLASHW_ALL;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fwi.dwTimeout = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; This will get the system default which is the caret blink rate&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fwi.uCount = (&lt;SPAN style="COLOR: teal"&gt;UInt32&lt;/SPAN&gt;)flashCount;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fwi.hwnd = form.Handle;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; blinky, blinky, blinky&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;.FlashWindowEx(&lt;SPAN style="COLOR: blue"&gt;ref&lt;/SPAN&gt; fwi);&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;else&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; Our console has the input focus so let's be a bit more agressive...&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;.SetForegroundWindow(&lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;HandleRef&lt;/SPAN&gt;(form, form.Handle));&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; Don't call us again...&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; form.Activated -= &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;EventHandler&lt;/SPAN&gt;(OnModalDialogFormActivate);&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;else&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;Debug&lt;/SPAN&gt;.Fail(&lt;SPAN style="COLOR: maroon"&gt;"Invalid sender in OnModalDialogFormLoad"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;const&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; SPI_GETFOREGROUNDFLASHCOUNT = 0x2004;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;const&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; FLASHW_STOP = 0;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;const&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; FLASHW_CAPTION = 0x00000001;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;const&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; FLASHW_TRAY = 0x00000002;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;const&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; FLASHW_ALL = (FLASHW_CAPTION | FLASHW_TRAY);&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;const&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; FLASHW_TIMER = 0x00000004;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;const&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; FLASHW_TIMERNOFG = 0x0000000C;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [&lt;SPAN style="COLOR: teal"&gt;StructLayout&lt;/SPAN&gt;(&lt;SPAN style="COLOR: teal"&gt;LayoutKind&lt;/SPAN&gt;.Sequential)]&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;internal&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;struct&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;FLASHWINFO&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;UInt32&lt;/SPAN&gt; cbSize;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;IntPtr&lt;/SPAN&gt; hwnd;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;UInt32&lt;/SPAN&gt; dwFlags;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;UInt32&lt;/SPAN&gt; uCount;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;UInt32&lt;/SPAN&gt; dwTimeout;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [&lt;SPAN style="COLOR: teal"&gt;DllImport&lt;/SPAN&gt;(&lt;SPAN style="COLOR: maroon"&gt;"user32"&lt;/SPAN&gt;, SetLastError = &lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;, CharSet = &lt;SPAN style="COLOR: teal"&gt;CharSet&lt;/SPAN&gt;.Auto, BestFitMapping = &lt;SPAN style="COLOR: blue"&gt;false&lt;/SPAN&gt;)]&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;extern&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; FlashWindowEx(&lt;SPAN style="COLOR: blue"&gt;ref&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;FLASHWINFO&lt;/SPAN&gt; fwi);&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [&lt;SPAN style="COLOR: teal"&gt;DllImport&lt;/SPAN&gt;(&lt;SPAN style="COLOR: maroon"&gt;"user32"&lt;/SPAN&gt;, CharSet = &lt;SPAN style="COLOR: teal"&gt;CharSet&lt;/SPAN&gt;.Auto)]&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;extern&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;bool&lt;/SPAN&gt; SystemParametersInfo(&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; nAction, &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; nParam, &lt;SPAN style="COLOR: blue"&gt;ref&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; value, &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; ignore);&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [&lt;SPAN style="COLOR: teal"&gt;DllImport&lt;/SPAN&gt;(&lt;SPAN style="COLOR: maroon"&gt;"user32"&lt;/SPAN&gt;, SetLastError = &lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;, CharSet = &lt;SPAN style="COLOR: teal"&gt;CharSet&lt;/SPAN&gt;.Auto, BestFitMapping = &lt;SPAN style="COLOR: blue"&gt;false&lt;/SPAN&gt;)]&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;internal&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;extern&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;IntPtr&lt;/SPAN&gt; SetForegroundWindow(&lt;SPAN style="COLOR: teal"&gt;HandleRef&lt;/SPAN&gt; hwnd);&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [&lt;SPAN style="COLOR: teal"&gt;DllImport&lt;/SPAN&gt;(&lt;SPAN style="COLOR: maroon"&gt;"user32"&lt;/SPAN&gt;, SetLastError = &lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;, CharSet = &lt;SPAN style="COLOR: teal"&gt;CharSet&lt;/SPAN&gt;.Auto, BestFitMapping = &lt;SPAN style="COLOR: blue"&gt;false&lt;/SPAN&gt;)]&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;internal&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;extern&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;IntPtr&lt;/SPAN&gt; GetForegroundWindow();&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [&lt;SPAN style="COLOR: teal"&gt;DllImport&lt;/SPAN&gt;(&lt;SPAN style="COLOR: maroon"&gt;"kernel32"&lt;/SPAN&gt;, SetLastError = &lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;, CharSet = &lt;SPAN style="COLOR: teal"&gt;CharSet&lt;/SPAN&gt;.Auto, BestFitMapping = &lt;SPAN style="COLOR: blue"&gt;false&lt;/SPAN&gt;)]&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;internal&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;extern&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;IntPtr&lt;/SPAN&gt; GetConsoleWindow();&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;}&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;}&lt;/SPAN&gt;&lt;BR&gt;&lt;/PRE&gt;&lt;/DIV&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114356435786888970?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114356435786888970/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114356435786888970&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114356435786888970'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114356435786888970'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/flashing-dialogboxes.html' title='Flashing Dialogboxes'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114349693308623238</id><published>2006-03-27T17:01:00.000-05:00</published><updated>2006-03-27T17:02:13.760-05:00</updated><title type='text'>Robin Trower is touring the US again!!!</title><content type='html'>&lt;FONT face=Verdana size=2&gt;I'm a huge &lt;/FONT&gt;&lt;A href="http://www.trowerpower.com/"&gt;&lt;FONT face=Verdana size=2&gt;Robin Trower&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt; fan but haven't seen him live in many years mostly because he hasn't toured the US in many years and when he was touring he didn't come near where I was living.&amp;nbsp; I was about to book a flight to England just to see him again so I went to check the tour schedule this weekend and saw that he's added &lt;/FONT&gt;&lt;A href="http://www.trowerpower.com/html/trower_us_2006_cal.html"&gt;&lt;FONT face=Verdana size=2&gt;US tour dates this year&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt;.&amp;nbsp; I am beyond excited.&amp;nbsp; I will try and catch at least 2 or 3 shows.&lt;/FONT&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114349693308623238?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114349693308623238/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114349693308623238&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114349693308623238'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114349693308623238'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/robin-trower-is-touring-us-again.html' title='Robin Trower is touring the US again!!!'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114349220399191901</id><published>2006-03-27T15:42:00.000-05:00</published><updated>2006-03-27T15:45:32.286-05:00</updated><title type='text'>Overcoming a .NET ListView CheckBoxes quirk</title><content type='html'>&lt;P&gt;&lt;FONT face=Verdana size=2&gt;In the Visual Studio Team Foundation version control UI, we display your pending changes in a ListView control.&amp;nbsp; That ListView has CheckeBoxes set to true as we allow you to perform a variety of operations on the checked items.&amp;nbsp; &lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;At the same time we want you to be able to double click on an item in the list and have the file open in the editor.&amp;nbsp; &lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Unfortunately, the .NET ListView component automatically toggles the checked state of items when you double click on them.&amp;nbsp; I know that this is not the behavior of the underlying Win32 ListView control so it has to be something in the WinForms code.&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;At this point it's worth examing how this all works.&amp;nbsp; In a traditional C/C++ application, the ListView control sends WM_NOTIFY messages to the window that is the parent of the ListView.&amp;nbsp; This is typically a dialog box window.&amp;nbsp; In WinForms, events are exposed directly from the controls themselves.&amp;nbsp; So internally WinForms will take the WM_NOTIFY message and reflect it back to the child control and then the child control handles the message by firing events that you add your event handlers too.&amp;nbsp; This happens for other messages besides WM_NOTIFY - such as WM_COMMAND.&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;A few minutes with a program such as Spy++ will show you the message traffic.&amp;nbsp; When you double click a ListView item the underlying Win32 ListView sends a WM_NOTIFY message to the parent window (typically your Form).&amp;nbsp; The WinForms message handler for the parent window then reroutes the message back to the ListView by sending it a new message - WM_REFLECT + WM_NOTIFY.&amp;nbsp; The WinForms ListView message handler then dispatches it.&amp;nbsp; When the WinForms ListView sees a NM_DBLCLK notification it then sends a message (LVM_HITTEST) to the Win32 ListView control asking where the click occurred.&amp;nbsp; If it was on an item, the WinForms ListView code will then toggle the checked state of the item.&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Since none of this behavior is exposed via the properties of the ListView control we'll have to work around it using less convenient means.&amp;nbsp; The solution I came up with for Team Foundation was to set a flag during the NM_DBLCLK notification that we're in the midst of a double click notification and then we intercept the LVM_HITTEST call and return that no item was found.&lt;/FONT&gt;&lt;/P&gt;&lt;DIV class="codeblock"&gt;&lt;pre&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.ComponentModel;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Runtime.InteropServices;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Security.Permissions;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Windows.Forms;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;namespace&lt;/SPAN&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; ListViewCheckBoxes&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;{&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;MyListView&lt;/SPAN&gt;&lt;FONT color=#000000&gt; : &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;ListView&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;bool&lt;/SPAN&gt;&lt;FONT color=#000000&gt; m_doubleClickDoesCheck = &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;&lt;FONT color=#000000&gt;;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; maintain the default behavior&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;bool&lt;/SPAN&gt;&lt;FONT color=#000000&gt; m_inDoubleClickCheckHack = &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;false&lt;/SPAN&gt;&lt;FONT color=#000000&gt;;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//****************************************************************************************&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;// This function helps us overcome the problem with the managed listview wrapper wanting&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;// to turn double-clicks on checklist items into checkbox clicks.&amp;nbsp; We count on the fact&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;// that the base handler for NM_DBLCLK will send a hit test request back at us right away.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;// So we set a special flag to return a bogus hit test result in that case.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//****************************************************************************************&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;unsafe&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt;&lt;FONT color=#000000&gt; OnWmReflectNotify(&lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;ref&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Message&lt;/SPAN&gt;&lt;FONT color=#000000&gt; m)&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt;&lt;FONT color=#000000&gt; (!DoubleClickDoesCheck &amp;amp;&amp;amp; CheckBoxes)&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.&lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;NMHDR&lt;/SPAN&gt;&lt;FONT color=#000000&gt;* nmhdr = (&lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.&lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;NMHDR&lt;/SPAN&gt;&lt;FONT color=#000000&gt; *)m.LParam;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt;&lt;FONT color=#000000&gt; (nmhdr-&amp;gt;code == &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.NM_DBLCLK)&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_inDoubleClickCheckHack = &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;&lt;FONT color=#000000&gt;;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [&lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;SecurityPermission&lt;/SPAN&gt;&lt;FONT color=#000000&gt;(&lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;SecurityAction&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.LinkDemand, Flags = &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;SecurityPermissionFlag&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.UnmanagedCode)]&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;protected&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;override&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt;&lt;FONT color=#000000&gt; WndProc(&lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;ref&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Message&lt;/SPAN&gt;&lt;FONT color=#000000&gt; m)&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;switch&lt;/SPAN&gt;&lt;FONT color=#000000&gt; (m.Msg)&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; This code is to hack around the fact that the managed listview&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; wrapper translates double clicks into checks without giving the &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; host to participate.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; See OnWmReflectNotify() for more details.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;case&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.WM_REFLECT + &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.WM_NOTIFY:&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OnWmReflectNotify(&lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;ref&lt;/SPAN&gt;&lt;FONT color=#000000&gt; m);&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;break&lt;/SPAN&gt;&lt;FONT color=#000000&gt;;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; This code checks to see if we have entered our hack check for&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; double clicking items in check lists.&amp;nbsp; During the NM_DBLCLK&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; processing, the managed handler will send a hit test message&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; to see which item to check.&amp;nbsp; Returning -1 will convince that&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; code not to proceed.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;case&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.LVM_HITTEST:&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt;&lt;FONT color=#000000&gt; (m_inDoubleClickCheckHack)&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_inDoubleClickCheckHack = &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;false&lt;/SPAN&gt;&lt;FONT color=#000000&gt;;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;m.Result = (System.&lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;IntPtr&lt;/SPAN&gt;&lt;FONT color=#000000&gt;)(-1);&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;return&lt;/SPAN&gt;&lt;FONT color=#000000&gt;;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;break&lt;/SPAN&gt;&lt;FONT color=#000000&gt;;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;base&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.WndProc(&lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;ref&lt;/SPAN&gt;&lt;FONT color=#000000&gt; m);&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [&lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Browsable&lt;/SPAN&gt;&lt;FONT color=#000000&gt;(&lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;&lt;FONT color=#000000&gt;), &lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Description&lt;/SPAN&gt;&lt;FONT color=#000000&gt;(&lt;/FONT&gt;&lt;SPAN style="COLOR: maroon"&gt;"When CheckBoxes is true, this controls whether or not double clicking will toggle the check."&lt;/SPAN&gt;&lt;FONT color=#000000&gt;), &lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Category&lt;/SPAN&gt;&lt;FONT color=#000000&gt;(&lt;/FONT&gt;&lt;SPAN style="COLOR: maroon"&gt;"My Controls"&lt;/SPAN&gt;&lt;FONT color=#000000&gt;),&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;DefaultValue&lt;/SPAN&gt;&lt;FONT color=#000000&gt;(&lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;&lt;FONT color=#000000&gt;)]&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;bool&lt;/SPAN&gt;&lt;FONT color=#000000&gt; DoubleClickDoesCheck&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;get&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;return&lt;/SPAN&gt;&lt;FONT color=#000000&gt; m_doubleClickDoesCheck;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;set&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_doubleClickDoesCheck = &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;value&lt;/SPAN&gt;&lt;FONT color=#000000&gt;;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//****************************************************************************************&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; This is stuff you would normally put in a separate file with all the other interop&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; you have to work with.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//****************************************************************************************&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;NativeMethods&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;const&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt;&lt;FONT color=#000000&gt; WM_USER = 0x0400;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;const&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt;&lt;FONT color=#000000&gt; WM_REFLECT = WM_USER + 0x1C00;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;const&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt;&lt;FONT color=#000000&gt; WM_NOTIFY = 0x004E;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;const&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt;&lt;FONT color=#000000&gt; LVM_HITTEST = (0x1000 + 18);&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;const&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt;&lt;FONT color=#000000&gt; NM_DBLCLK = (-3);&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [&lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;StructLayout&lt;/SPAN&gt;&lt;FONT color=#000000&gt;(&lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;LayoutKind&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.Sequential)]&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;struct&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;NMHDR&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;IntPtr&lt;/SPAN&gt;&lt;FONT color=#000000&gt; hwndFrom;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;UIntPtr&lt;/SPAN&gt;&lt;FONT color=#000000&gt; idFrom;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt;&lt;FONT color=#000000&gt; code;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;}&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;/pre&gt;&lt;/DIV&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114349220399191901?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114349220399191901/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114349220399191901&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114349220399191901'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114349220399191901'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/overcoming-net-listview-checkboxes.html' title='Overcoming a .NET ListView CheckBoxes quirk'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114334922329232812</id><published>2006-03-25T23:57:00.000-05:00</published><updated>2006-03-26T00:00:26.350-05:00</updated><title type='text'>Carvin HF2 is DONE!</title><content type='html'>The &lt;a href="http://hippietim.blogspot.com/2006/01/carvin-hf2-holdsworth-fatboy.html"&gt;Carvin HF2 "Holdsworth Fatboy"&lt;/a&gt; is finished and is supposed to ship Monday!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114334922329232812?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114334922329232812/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114334922329232812&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114334922329232812'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114334922329232812'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/carvin-hf2-is-done.html' title='Carvin HF2 is DONE!'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114322004607530612</id><published>2006-03-24T12:06:00.000-05:00</published><updated>2006-03-24T12:07:26.613-05:00</updated><title type='text'>Give the .NET loader a hand - how to load assemblies from VS PrivateAssemblies</title><content type='html'>&lt;P&gt;&lt;FONT face=Verdana size=2&gt;This program demonstrates how to use the &lt;/FONT&gt;&lt;A href="http://msdn2.microsoft.com/en-us/library/system.appdomain.assemblyresolve.aspx"&gt;&lt;FONT face=Verdana size=2&gt;AppDomain.AssemblyResolve&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana size=2&gt;&amp;nbsp;event to help the .NET loader get assemblies loaded that it can't find.&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The VS Team Foundation edition ships with a number of assemblies you may want to reference in your own apps.&amp;nbsp; Most of the important ones are installed in the GAC so you should have no problem loading them at runtime.&amp;nbsp; However, some of them are installed under the VS PrivateAssemblies directory (by default this is C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies).&amp;nbsp; Your options are you can copy these DLLs around, put that directory in your path, put your tool in the same directory, or have .exe.config file for your app that tells the loader where to look.&amp;nbsp; Quite frankly, none of these options is particularly appealing since they all make distributing your tool more cumbersome.&amp;nbsp; So let's help the loader out!&lt;/FONT&gt;&lt;/P&gt;&lt;DIV class="codeblock"&gt;&lt;PRE&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Diagnostics;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.IO;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Reflection;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Text;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; Microsoft.Win32;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;namespace&lt;/SPAN&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; TeamFoundationAssemblyLoadTest&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;{&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Program&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt;&lt;FONT color=#000000&gt; Main(&lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt;&lt;FONT color=#000000&gt;[] args)&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;AppDomain&lt;/SPAN&gt;&lt;FONT color=#000000&gt; domain = &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;AppDomain&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.CurrentDomain;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; domain.AssemblyResolve += &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;ResolveEventHandler&lt;/SPAN&gt;&lt;FONT color=#000000&gt;(domain_AssemblyResolve);&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; The following line triggers the AssemblyResolve event to fire because&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; it uses a class in Microsoft.TeamFoundation.WorkItemTracking.Controls.dll&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; which is not installed in the GAC or anywhere else convenient.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;ClassThatUsesTeamFoundation&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.SomeFunction();&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Assembly&lt;/SPAN&gt;&lt;FONT color=#000000&gt; domain_AssemblyResolve(&lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt;&lt;FONT color=#000000&gt; sender, &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;ResolveEventArgs&lt;/SPAN&gt;&lt;FONT color=#000000&gt; args)&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;String&lt;/SPAN&gt;&lt;FONT color=#000000&gt;[] assemblyParams = args.Name.Split(&lt;/FONT&gt;&lt;SPAN style="COLOR: maroon"&gt;','&lt;/SPAN&gt;&lt;FONT color=#000000&gt;);&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Debug&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.Assert(assemblyParams.Length &amp;gt; 0 &amp;amp;&amp;amp; !&lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;String&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.IsNullOrEmpty(assemblyParams[0]), &lt;/FONT&gt;&lt;SPAN style="COLOR: maroon"&gt;"Invalid assembly name arguments passed to domain_AssemblyResolve"&lt;/SPAN&gt;&lt;FONT color=#000000&gt;);&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; Note that there are additional fields passed that indicate the &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; version, public key token, etc.&amp;nbsp; For this demonstration, we&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;SPAN style="COLOR: green"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/SPAN&gt;//&amp;nbsp; are just looking at the assembly name.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;String&lt;/SPAN&gt;&lt;FONT color=#000000&gt; assemblyName = assemblyParams[0];&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Assembly&lt;/SPAN&gt;&lt;FONT color=#000000&gt; loadedAssembly = &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;&lt;FONT color=#000000&gt;;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;switch&lt;/SPAN&gt;&lt;FONT color=#000000&gt; (assemblyName)&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;case&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: maroon"&gt;"Microsoft.TeamFoundation.WorkItemTracking.Controls"&lt;/SPAN&gt;&lt;FONT color=#000000&gt;:&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;case&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: maroon"&gt;"Microsoft.VisualStudio.TeamFoundation"&lt;/SPAN&gt;&lt;FONT color=#000000&gt;:&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;// etc.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; loadedAssembly = LoadVSPrivateAssembly(assemblyName);&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;break&lt;/SPAN&gt;&lt;FONT color=#000000&gt;;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;default&lt;/SPAN&gt;&lt;FONT color=#000000&gt;:&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Debug&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.Fail(assemblyName + &lt;/FONT&gt;&lt;SPAN style="COLOR: maroon"&gt;" is not supported by TeamFoundationAssemblyLoadTest.domain_AssemblyResolve"&lt;/SPAN&gt;&lt;FONT color=#000000&gt;);&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;break&lt;/SPAN&gt;&lt;FONT color=#000000&gt;;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;return&lt;/SPAN&gt;&lt;FONT color=#000000&gt; loadedAssembly;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; This function will load the named assembly from the Visual Studio PrivateAssemblies &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; directory.&amp;nbsp; This is where a number of Team Foundation assemblies are located that are&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; not easily accessible to an app.&amp;nbsp; Fortunately, the .NET loader gives us a shot at &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; finding them and we just happen to know where to look.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Assembly&lt;/SPAN&gt;&lt;FONT color=#000000&gt; LoadVSPrivateAssembly(&lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;String&lt;/SPAN&gt;&lt;FONT color=#000000&gt; assemblyName)&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Assembly&lt;/SPAN&gt;&lt;FONT color=#000000&gt; loadedAssembly = &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;&lt;FONT color=#000000&gt;;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;using&lt;/SPAN&gt;&lt;FONT color=#000000&gt; (&lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;RegistryKey&lt;/SPAN&gt;&lt;FONT color=#000000&gt; key = &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Registry&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.LocalMachine.OpenSubKey(&lt;/FONT&gt;&lt;SPAN style="COLOR: maroon"&gt;@"Software\Microsoft\VisualStudio\8.0"&lt;/SPAN&gt;&lt;FONT color=#000000&gt;))&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt;&lt;FONT color=#000000&gt; (key != &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;&lt;FONT color=#000000&gt;)&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Object&lt;/SPAN&gt;&lt;FONT color=#000000&gt; obj = key.GetValue(&lt;/FONT&gt;&lt;SPAN style="COLOR: maroon"&gt;"InstallDir"&lt;/SPAN&gt;&lt;FONT color=#000000&gt;);&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt;&lt;FONT color=#000000&gt; ((obj != &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;&lt;FONT color=#000000&gt;) &amp;amp;&amp;amp; (obj &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;is&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;String&lt;/SPAN&gt;&lt;FONT color=#000000&gt;))&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;String&lt;/SPAN&gt;&lt;FONT color=#000000&gt; vsInstallDir = obj &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;as&lt;/SPAN&gt;&lt;FONT color=#000000&gt; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;String&lt;/SPAN&gt;&lt;FONT color=#000000&gt;;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;String&lt;/SPAN&gt;&lt;FONT color=#000000&gt; privateAssembliesDir = &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Path&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.Combine(vsInstallDir, &lt;/FONT&gt;&lt;SPAN style="COLOR: maroon"&gt;"PrivateAssemblies"&lt;/SPAN&gt;&lt;FONT color=#000000&gt;);&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;String&lt;/SPAN&gt;&lt;FONT color=#000000&gt; assemblyFile = &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Path&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.Combine(privateAssembliesDir, assemblyName + &lt;/FONT&gt;&lt;SPAN style="COLOR: maroon"&gt;".dll"&lt;/SPAN&gt;&lt;FONT color=#000000&gt;);&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; loadedAssembly = &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Assembly&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.LoadFile(assemblyFile);&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;else&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Debug&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.Fail(&lt;/FONT&gt;&lt;SPAN style="COLOR: maroon"&gt;"VS 8.0 InstallDir value is missing or invalid"&lt;/SPAN&gt;&lt;FONT color=#000000&gt;);&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;else&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: teal"&gt;Debug&lt;/SPAN&gt;&lt;FONT color=#000000&gt;.Fail(&lt;/FONT&gt;&lt;SPAN style="COLOR: maroon"&gt;"Could not open VS 8.0 registry key"&lt;/SPAN&gt;&lt;FONT color=#000000&gt;);&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN style="COLOR: blue"&gt;return&lt;/SPAN&gt;&lt;FONT color=#000000&gt; loadedAssembly;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;}&lt;/SPAN&gt;&lt;BR&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114322004607530612?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114322004607530612/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114322004607530612&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114322004607530612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114322004607530612'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/give-net-loader-hand-how-to-load.html' title='Give the .NET loader a hand - how to load assemblies from VS PrivateAssemblies'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114321405655565042</id><published>2006-03-24T10:25:00.000-05:00</published><updated>2006-03-24T10:27:37.983-05:00</updated><title type='text'>Finally fixed my Blogger template</title><content type='html'>If anyone was actually paying attention, they'd see that my Links have varied and the styles haven't been right from time to time.  Well, it's cuz I update my blog from a couple different machines and had outdated blog templates on each machine.&lt;br /&gt;&lt;br /&gt;I think it's all fixed again.  I also added some quick links to the musical journey posts.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114321405655565042?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114321405655565042/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114321405655565042&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114321405655565042'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114321405655565042'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/finally-fixed-my-blogger-template.html' title='Finally fixed my Blogger template'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114320756154518012</id><published>2006-03-24T08:37:00.000-05:00</published><updated>2006-03-24T08:39:21.563-05:00</updated><title type='text'>Carvin HF2 now entering "String Setup and Quality Assurance"</title><content type='html'>The &lt;a href="http://hippietim.blogspot.com/2006/01/carvin-hf2-holdsworth-fatboy.html"&gt;Carvin HF2 "Holdsworth Fatboy"&lt;/a&gt; has transitioned from the "Buffing and Fret Detailing" stage to "String Setup and Quality Assurance".  Sooooo close!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114320756154518012?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114320756154518012/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114320756154518012&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114320756154518012'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114320756154518012'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/carvin-hf2-now-entering-string-setup.html' title='Carvin HF2 now entering &quot;String Setup and Quality Assurance&quot;'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114321202480771722</id><published>2006-03-23T09:51:00.000-05:00</published><updated>2006-03-24T09:53:44.820-05:00</updated><title type='text'>No more Chicken Little</title><content type='html'>Heh...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114321202480771722?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114321202480771722/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114321202480771722&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114321202480771722'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114321202480771722'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/no-more-chicken-little.html' title='No more Chicken Little'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114308186213086218</id><published>2006-03-22T21:15:00.000-05:00</published><updated>2006-03-24T10:06:23.740-05:00</updated><title type='text'>Musical Journey Part 6</title><content type='html'>Ok, it's been a while since I posted on this...&lt;br /&gt;&lt;br /&gt;So we're about to the 11th grade I believe.  This is when I started playing with Eric Leifert (guitar) and Steve Keister (drums).  Steve's brother Mike played guitar very well too but he was a bit older and already in college. &lt;br /&gt;&lt;br /&gt;This was another big turning point for me musically.  Eric and Steve exposed me to Robin Trower, Black Sabbath, Iron Maiden, Judas Priest, etc. - basically more of the heavy and moody stuff.  They were into Zeppelin and Rush as well.  We hit it off pretty good.  We had a great circle of friends too.  Much partying :)&lt;br /&gt;&lt;br /&gt;&lt;div class="floatblock"&gt;At some point in the 10th grade Phil Hurd and I started to form a band with Donald Davis on drums.  I was playing bass.  I don't even remember where the bass came from to be honest.  We didn't last long.  But I figured I ought to mention it.&lt;p&gt;Another reason I remember this time period is because it was around this time that I traded away my Antigua Telecaster for a piece of crap Ibanez Iceman.  Yucko.&lt;/div&gt;When I first heard Robin Trower's Bridge of Sighs album I about lost my mind.  This music was AMAZING.  Really amazing.  James DeWar was a fantastic vocalist.  And Trower!  Wow!  Trower played the most incredible stuff.  He still does.  When you first listen to him it seems simple but as you dig in his music is very rich with subtleties and complexities that are just brilliant.  I've listened to Bridge of Sighs more than any other album ever.  I've owned the LP, 2 cassettes, and 3 copies of it on CD!&lt;br /&gt;&lt;br /&gt;So Mike D. played bass with us and I'm sure a few other guys did along the way as well.  Who knows?  We played stuff like The Ocean, Freewill, War Pigs, Iron Man, Livin' After Midnight, etc.&lt;br /&gt;&lt;br /&gt;We didn't have a singer really.  Bob Stanley would come over and sing once and a while.  Bob was fun and really wanted to be a singer.  Mostly he wanted to get stoned and cruise around Lake Barcroft.&lt;br /&gt;&lt;br /&gt;We usually practiced at Steve's house early on.  His parents didn't seem to mind the racket and it was handy for Eric since they were next door neighbors.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114308186213086218?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114308186213086218/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114308186213086218&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114308186213086218'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114308186213086218'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/musical-journey-part-6.html' title='Musical Journey Part 6'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114308011070401848</id><published>2006-03-22T21:12:00.000-05:00</published><updated>2006-03-22T21:15:10.720-05:00</updated><title type='text'>Carvin HF2 now entering "Buffing and Fret Detailing"</title><content type='html'>The &lt;a href="http://hippietim.blogspot.com/2006/01/carvin-hf2-holdsworth-fatboy.html"&gt;Carvin HF2 "Holdsworth Fatboy"&lt;/a&gt; has transitioned from the "Painting and Finishing" stage to "Buffing and Fret Detailing".  Yippee!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114308011070401848?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114308011070401848/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114308011070401848&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114308011070401848'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114308011070401848'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/carvin-hf2-now-entering-buffing-and.html' title='Carvin HF2 now entering &quot;Buffing and Fret Detailing&quot;'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114303596084394778</id><published>2006-03-22T08:58:00.000-05:00</published><updated>2006-03-22T08:59:32.050-05:00</updated><title type='text'>Why is Chicken Little still on American Idol?</title><content type='html'>There, I admit it. I watch American Idol. At least I've never watched Survivor or The Amazing Race.&lt;br /&gt;&lt;br /&gt;Pffft.&lt;br /&gt;&lt;br /&gt;So back to the question. Why is Kevin Covais (dubbed Chicken Little by the show's host Ryan Seacrest) still on American Idol?&lt;br /&gt;&lt;br /&gt;I get that he's a nice kid with a pleasant singing voice. But c'mon, he is way out of his league. Some of those folks can BRING IT. I mean they can really sing. And they can command the stage with a compelling presence and personality.&lt;br /&gt;&lt;br /&gt;My personal favorites this season are Taylor Hicks, Katherine McPhee, Christopher Daughtry, Elliot Yamin, Mandisa, and Paris Bennett.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114303596084394778?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114303596084394778/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114303596084394778&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114303596084394778'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114303596084394778'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/why-is-chicken-little-still-on.html' title='Why is Chicken Little still on American Idol?'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114321381120316458</id><published>2006-03-21T10:22:00.000-05:00</published><updated>2006-03-24T10:24:20.146-05:00</updated><title type='text'>WinForms ListView Performance - ListView collections</title><content type='html'>&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The WinForms ListView has a few very handy collections - CheckedItems and CheckedIndices.&amp;nbsp; SelectedItems is a collection of the ListViewItems that are selected.&amp;nbsp; SelectedIndices is a collection of the indexes of the ListViewItems that are selected.&amp;nbsp; Those values can be used to pick out ListViewItems from the ListView.Items collection.&amp;nbsp; CheckedItems and CheckedIndices are just like the SelectedXXX collections only they are for the items that are checked.&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The SelectedXXX collections perform very well.&amp;nbsp; Underneath the covers they are implemented by sending the Win32 ListView control a LVM_GETNEXTITEM message specifying LVNI_SELECTED to find the next selected item.&amp;nbsp; The Count properties are implemented by sending the Win32 ListView control a LVM_GETSELECTEDCOUNT message.&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;On the other hand...&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The CheckedXXX collections are very expensive.&amp;nbsp; Underneath the covers they enumerate the listview Items collection for just about every operation.&amp;nbsp; To retrieve the Count for the CheckedXXX collections WinForms will walk the entire Items collection and test the Checked property of each ListView Item.&amp;nbsp; Querying the Checked property of each item results in&amp;nbsp;sending a LVM_GETITEMSTATE&amp;nbsp;message to the&amp;nbsp;Win32 ListView control to query for the checked state.&amp;nbsp; To reference an item from the CheckedXXX collections iterates over the ListView Items collection stopping at the index you ask for.&amp;nbsp; So the worst case performance is if all items in the ListView are checked.&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;My previous ListView examples were working with 5000 items.&amp;nbsp; Well, for the CheckedXXX collections just a few hundred items is enough to exhibit performance problems depending on how you write your code.&amp;nbsp; It doesn't make much difference whether you use the CheckedItems collection or the CheckedIndices collection since the CheckedItem collection basically does its job via the CheckedIndices collection.&amp;nbsp; What makes a huge difference is how you access the items.&amp;nbsp; Index lookup is very slow because of how the next item is found by starting at the beginning again each time.&amp;nbsp; If for some reason you must do this, then at least cache the Count value at the start of your loop if possible because it is very expensive to recompute.&amp;nbsp; The fastest way to use these collections is via enumeration&amp;nbsp;such as a&amp;nbsp;foreach() loop.&amp;nbsp; Even that is not as fast as just enumerating the Items collection yourself and testing each item's Checked property yourself.&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;For the Team Foundation Server version control UI, we sometimes have 50,000 or more items if you are doing a big branch or adding an existing tree.&amp;nbsp; I ended up keeping a separate cache of the checked items myself - I just updated the cache during ListView Checked events.&amp;nbsp; Ideally we would have used a&amp;nbsp;virtual ListView but there were other unrelated performance problems with sorting that made this actually perform worse in our case.&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;div class="codeblock"&gt;&lt;PRE&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Collections;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.ComponentModel;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Data;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Drawing;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Text;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Windows.Forms;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;namespace&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; ListViewPerf&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;{&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;partial&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;Form1&lt;/SPAN&gt; : &lt;SPAN style="COLOR: teal"&gt;Form&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;const&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; ListEntryCount = 500;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; seed = 7919;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; use a constant for repeatable results&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;String&lt;/SPAN&gt;[] strings;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;bool&lt;/SPAN&gt;[] checksInit;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; dontCare;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; processed;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; Form1()&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;Random&lt;/SPAN&gt; rand = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;Random&lt;/SPAN&gt;(seed);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strings = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;String&lt;/SPAN&gt;[ListEntryCount];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; checksInit = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;bool&lt;/SPAN&gt;[ListEntryCount];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;for&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; i = 0; i &amp;lt; ListEntryCount; i++)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strings[i] = rand.Next().ToString();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; checksInit[i] = (rand.Next() % 2) == 0;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; InitializeComponent();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; FillListView()&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;[] items = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;[ListEntryCount];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;for&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; i = 0; i &amp;lt; ListEntryCount; i++)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; items[i] = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;(strings[i]);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; items[i].Checked = checksInit[i];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.Items.AddRange(items);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; make the compiler believe we're doing something important here...&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; ProcessListViewItem(&lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt; lvi)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dontCare = lvi.Tag;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; processed++;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; CheckAll()&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;foreach&lt;/SPAN&gt; (&lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt; item &lt;SPAN style="COLOR: blue"&gt;in&lt;/SPAN&gt; listView1.Items)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; item.Checked = &lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; FetchViaItems()&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; processed = 0;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; count;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt; start;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;TimeSpan&lt;/SPAN&gt; tsCheckedIteratorWaySlow;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;TimeSpan&lt;/SPAN&gt; tsCheckedIterator;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;TimeSpan&lt;/SPAN&gt; tsCheckedEnumerator;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; start = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;for&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; i = 0; i &amp;lt; listView1.CheckedItems.Count; i++)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt; lvi = listView1.CheckedItems[i];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessListViewItem(lvi);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tsCheckedIteratorWaySlow = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now - start;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; start = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; count = listView1.CheckedItems.Count;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;for&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; i = 0; i &amp;lt; count; i++)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt; lvi = listView1.CheckedItems[i];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessListViewItem(lvi);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tsCheckedIterator = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now - start;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; start = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;foreach&lt;/SPAN&gt; (&lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt; lvi &lt;SPAN style="COLOR: blue"&gt;in&lt;/SPAN&gt; listView1.CheckedItems)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessListViewItem(lvi);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tsCheckedEnumerator = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now - start;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;MessageBox&lt;/SPAN&gt;.Show(&lt;SPAN style="COLOR: maroon"&gt;"Checked ListViewItems via CheckedItems collection:\n"&lt;/SPAN&gt; +&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: maroon"&gt;"CheckedIteratorWaySlow "&lt;/SPAN&gt; + tsCheckedIteratorWaySlow.TotalMilliseconds.ToString() + &lt;SPAN style="COLOR: maroon"&gt;" milliseconds\n"&lt;/SPAN&gt; +&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: maroon"&gt;"CheckedIterator "&lt;/SPAN&gt; + tsCheckedIterator.TotalMilliseconds.ToString() + &lt;SPAN style="COLOR: maroon"&gt;" milliseconds\n"&lt;/SPAN&gt; +&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: maroon"&gt;"CheckedEnumerator "&lt;/SPAN&gt; + tsCheckedEnumerator.TotalMilliseconds.ToString() + &lt;SPAN style="COLOR: maroon"&gt;" milliseconds\n"&lt;/SPAN&gt; +&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: maroon"&gt;"Processed "&lt;/SPAN&gt; + processed.ToString()&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; );&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; ViaItemsButton_Click(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: teal"&gt;EventArgs&lt;/SPAN&gt; e)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.Items.Clear();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FillListView();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; First test a random scattering of checked items&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FetchViaItems();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; Then test with all checked&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CheckAll();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FetchViaItems();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; FetchViaIndeces()&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; processed = 0;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; count;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt; start;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;TimeSpan&lt;/SPAN&gt; tsCheckedIteratorWaySlow;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;TimeSpan&lt;/SPAN&gt; tsCheckedIterator;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;TimeSpan&lt;/SPAN&gt; tsCheckedEnumerator;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; start = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;for&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; i = 0; i &amp;lt; listView1.CheckedIndices.Count; i++)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt; lvi = listView1.Items[listView1.CheckedIndices[i]];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessListViewItem(lvi);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tsCheckedIteratorWaySlow = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now - start;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; start = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; count = listView1.CheckedIndices.Count;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;for&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; i = 0; i &amp;lt; count; i++)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt; lvi = listView1.Items[listView1.CheckedIndices[i]];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessListViewItem(lvi);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tsCheckedIterator = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now - start;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; start = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;foreach&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; index &lt;SPAN style="COLOR: blue"&gt;in&lt;/SPAN&gt; listView1.CheckedIndices)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt; lvi = listView1.Items[index];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessListViewItem(lvi);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tsCheckedEnumerator = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now - start;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;MessageBox&lt;/SPAN&gt;.Show(&lt;SPAN style="COLOR: maroon"&gt;"Checked ListViewItems via CheckedIndices collection:\n"&lt;/SPAN&gt; +&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: maroon"&gt;"CheckedIteratorWaySlow "&lt;/SPAN&gt; + tsCheckedIteratorWaySlow.TotalMilliseconds.ToString() + &lt;SPAN style="COLOR: maroon"&gt;" milliseconds\n"&lt;/SPAN&gt; +&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: maroon"&gt;"CheckedIterator "&lt;/SPAN&gt; + tsCheckedIterator.TotalMilliseconds.ToString() + &lt;SPAN style="COLOR: maroon"&gt;" milliseconds\n"&lt;/SPAN&gt; +&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: maroon"&gt;"CheckedEnumerator "&lt;/SPAN&gt; + tsCheckedEnumerator.TotalMilliseconds.ToString() + &lt;SPAN style="COLOR: maroon"&gt;" milliseconds\n"&lt;/SPAN&gt; +&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: maroon"&gt;"Processed "&lt;/SPAN&gt; + processed.ToString()&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; );&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; ViaIndecesButton_Click(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: teal"&gt;EventArgs&lt;/SPAN&gt; e)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.Items.Clear();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FillListView();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FetchViaIndeces();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CheckAll();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FetchViaIndeces();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; FetchViaManual()&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; processed = 0;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; count;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt; start;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;TimeSpan&lt;/SPAN&gt; tsIteratorWaySlow;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;TimeSpan&lt;/SPAN&gt; tsIterator;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;TimeSpan&lt;/SPAN&gt; tsEnumerator;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; start = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;for&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; i = 0; i &amp;lt; listView1.Items.Count; i++)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt; lvi = listView1.Items[i];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (lvi.Checked)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessListViewItem(lvi);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tsIteratorWaySlow = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now - start;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; start = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; count = listView1.Items.Count;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;for&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; i = 0; i &amp;lt; count; i++)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt; lvi = listView1.Items[i];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (lvi.Checked)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessListViewItem(lvi);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tsIterator = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now - start;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; start = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;foreach&lt;/SPAN&gt; (&lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt; lvi &lt;SPAN style="COLOR: blue"&gt;in&lt;/SPAN&gt; listView1.Items)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (lvi.Checked)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessListViewItem(lvi);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tsEnumerator = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now - start;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;MessageBox&lt;/SPAN&gt;.Show(&lt;SPAN style="COLOR: maroon"&gt;"Checked ListViewItems via Manual lookup:\n"&lt;/SPAN&gt; +&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: maroon"&gt;"IteratorWaySlow "&lt;/SPAN&gt; + tsIteratorWaySlow.TotalMilliseconds.ToString() + &lt;SPAN style="COLOR: maroon"&gt;" milliseconds\n"&lt;/SPAN&gt; +&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: maroon"&gt;"Iterator "&lt;/SPAN&gt; + tsIterator.TotalMilliseconds.ToString() + &lt;SPAN style="COLOR: maroon"&gt;" milliseconds\n"&lt;/SPAN&gt; +&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN style="COLOR: maroon"&gt;"Enumerator "&lt;/SPAN&gt; + tsEnumerator.TotalMilliseconds.ToString() + &lt;SPAN style="COLOR: maroon"&gt;" milliseconds\n"&lt;/SPAN&gt; +&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: maroon"&gt;"Processed "&lt;/SPAN&gt; + processed.ToString()&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; );&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; ViaManual_Click(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: teal"&gt;EventArgs&lt;/SPAN&gt; e)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.Items.Clear();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FillListView();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FetchViaManual();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CheckAll();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FetchViaManual();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;}&lt;/SPAN&gt;&lt;BR&gt;&lt;/PRE&gt;&lt;br /&gt;&lt;P&gt;&lt;/P&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114321381120316458?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114321381120316458/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114321381120316458&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114321381120316458'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114321381120316458'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/winforms-listview-performance-listview.html' title='WinForms ListView Performance - ListView collections'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114321353476436573</id><published>2006-03-21T10:17:00.000-05:00</published><updated>2006-03-24T10:22:10.223-05:00</updated><title type='text'>WinForms ListView Performance - Initializing checked states</title><content type='html'>&lt;P&gt;&lt;FONT face=Verdana size=2&gt;CheckBoxes in a WinForms ListView are&amp;nbsp;of course a&amp;nbsp;bit simpler to use than dealing the underlying Win32 control directly.&amp;nbsp; WinForms deals with the ListView structures and the WM_NOTIFY messages.&amp;nbsp; Of course this comes at a cost.&amp;nbsp; Here's a simple demonstration of how to tweak things for better performance.&amp;nbsp; This is a simple example so the gains aren't monumental but when you add real world complexities to the Checked event handler and the computation of the Checked state of an item.&amp;nbsp; There are real noticeable&amp;nbsp;improvements by paying attention to some simple things.&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;When you are populating a ListView that has CheckBoxes, you really want to set the Checked property of the ListViewItem before you add it to the list.&amp;nbsp; The reason is that once you have added the item to the ListView.Items collection, WinForms will always defer to the underlying Win32 control to query and set the Checked state of the item.&amp;nbsp; Before it's added to the ListView the ListViewItem maintains the state itself.&amp;nbsp; Calling down into the Win32 control is very expensive since it involved PInvoking SendMessage.&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;There are 5 examples with steady gains in improvement.&lt;/FONT&gt;&lt;/P&gt;&lt;FONT face=Verdana size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;TABLE id=table1 style="BORDER-COLLAPSE: collapse" borderColor=#000000 cellSpacing=3 cellPadding=3 border=1&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD vAlign=top width=665&gt;&lt;FONT face=Verdana size=2&gt;Set the checked state of the item after it is added to the ListView&lt;/FONT&gt;&lt;/TD&gt;&lt;TD vAlign=top&gt;&lt;FONT face=Verdana size=2&gt;1425 milliseconds&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD vAlign=top width=665&gt;&lt;FONT face=Verdana size=2&gt;Set the checked state of the item after it is added to the ListView but at least check to see if it should be checked - this saves a marshaled SendMessage call to the Win32 ListView per item&lt;/FONT&gt;&lt;/TD&gt;&lt;TD vAlign=top&gt;&lt;FONT face=Verdana size=2&gt;1250 milliseconds&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD vAlign=top width=665&gt;&lt;FONT face=Verdana size=2&gt;Set the checked state of the item before it is added to the ListView&lt;/FONT&gt;&lt;/TD&gt;&lt;TD vAlign=top&gt;&lt;FONT face=Verdana size=2&gt;1106 milliseconds&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD vAlign=top width=665&gt;&lt;FONT face=Verdana size=2&gt;Add the items via AddRange and set the checked state of the items after they are added to the ListView - again you see that AddRange is MUCH faster than adding items one at a time.&lt;/FONT&gt;&lt;/TD&gt;&lt;TD vAlign=top&gt;&lt;FONT face=Verdana size=2&gt;343 milliseconds&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD vAlign=top width=665&gt;&lt;FONT face=Verdana size=2&gt;Add the items via AddRange and have the checked state set before the items are added&lt;/FONT&gt;&lt;/TD&gt;&lt;TD vAlign=top&gt;&lt;FONT face=Verdana size=2&gt;234 milliseconds&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR&gt;&lt;div class="codeblock"&gt;&lt;PRE&gt;&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Collections;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.ComponentModel;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Data;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Drawing;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Text;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Windows.Forms;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;namespace&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; ListViewPerf&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;{&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;partial&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;Form1&lt;/SPAN&gt; : &lt;SPAN style="COLOR: teal"&gt;Form&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;const&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; ListEntryCount = 5000;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; seed = 7919;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; use a constant for repeatable results&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;String&lt;/SPAN&gt;[] strings;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;bool&lt;/SPAN&gt;[] checksInit;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt; start;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; checkedEvents;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; Form1()&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;SPAN style="COLOR: teal"&gt;Random&lt;/SPAN&gt; rand = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;Random&lt;/SPAN&gt;(seed);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strings = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;String&lt;/SPAN&gt;[ListEntryCount];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; checksInit = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;bool&lt;/SPAN&gt;[ListEntryCount];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;for&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; i = 0; i &amp;lt; ListEntryCount; i++)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strings[i] = rand.Next().ToString();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; checksInit[i] = (rand.Next() % 2) == 0;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; InitializeComponent();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; PreCall()&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.Items.Clear();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; checkedEvents = 0;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; start = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; PostCall(&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt; s)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;TimeSpan&lt;/SPAN&gt; ts = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now - start;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;MessageBox&lt;/SPAN&gt;.Show(s + &lt;SPAN style="COLOR: maroon"&gt;" took "&lt;/SPAN&gt; + ts.TotalMilliseconds.ToString() + &lt;SPAN style="COLOR: maroon"&gt;" milliseconds\nAnd generated "&lt;/SPAN&gt; + checkedEvents.ToString() + &lt;SPAN style="COLOR: maroon"&gt;" Checked events"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;enum&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;CheckMode&lt;/SPAN&gt; { Before, After, AfterWithTest }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; FillListViewWithStrings(&lt;SPAN style="COLOR: teal"&gt;CheckMode&lt;/SPAN&gt; checkMode)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;for&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; i = 0; i &amp;lt; ListEntryCount; i++)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt; lvi = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;(strings[i]);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;bool&lt;/SPAN&gt; check = checksInit[i];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;switch&lt;/SPAN&gt; (checkMode)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;case&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;CheckMode&lt;/SPAN&gt;.After:&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.Items.Add(lvi);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lvi.Checked = check;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;break&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;case&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;CheckMode&lt;/SPAN&gt;.Before:&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lvi.Checked = check;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.Items.Add(lvi);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;break&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;case&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;CheckMode&lt;/SPAN&gt;.AfterWithTest:&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;listView1.Items.Add(lvi);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (check)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lvi.Checked = check;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;break&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; checkAfter_Click(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: teal"&gt;EventArgs&lt;/SPAN&gt; e)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PreCall();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FillListViewWithStrings(&lt;SPAN style="COLOR: teal"&gt;CheckMode&lt;/SPAN&gt;.After);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PostCall(&lt;SPAN style="COLOR: maroon"&gt;"Check After"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; checkAfterTest_Click(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: teal"&gt;EventArgs&lt;/SPAN&gt; e)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PreCall();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FillListViewWithStrings(&lt;SPAN style="COLOR: teal"&gt;CheckMode&lt;/SPAN&gt;.AfterWithTest);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PostCall(&lt;SPAN style="COLOR: maroon"&gt;"Check After With Test"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; checkBefore_Click(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: teal"&gt;EventArgs&lt;/SPAN&gt; e)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;PreCall();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FillListViewWithStrings(&lt;SPAN style="COLOR: teal"&gt;CheckMode&lt;/SPAN&gt;.Before);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PostCall(&lt;SPAN style="COLOR: maroon"&gt;"Check Before"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;[] BuildListViewItems(&lt;SPAN style="COLOR: blue"&gt;bool&lt;/SPAN&gt; setChecks)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;[] items = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;[ListEntryCount];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (setChecks)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;for&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; i = 0; i &amp;lt; ListEntryCount; i++)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; items[i] = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;(strings[i]);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; items[i].Checked = checksInit[i];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;else&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;for&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; i = 0; i &amp;lt; ListEntryCount; i++)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; items[i] = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;(strings[i]);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;return&lt;/SPAN&gt; items;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; addRangeAfter_Click(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: teal"&gt;EventArgs&lt;/SPAN&gt; e)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PreCall();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;[] items = BuildListViewItems(&lt;SPAN style="COLOR: blue"&gt;false&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.Items.AddRange(items);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;for&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; i = 0; i &amp;lt; ListEntryCount; i++)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.Items[i].Checked = checksInit[i];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PostCall(&lt;SPAN style="COLOR: maroon"&gt;"AddRange After"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; addRangeBefore_Click(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: teal"&gt;EventArgs&lt;/SPAN&gt; e)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PreCall();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;[] items = BuildListViewItems(&lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.Items.AddRange(items);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PostCall(&lt;SPAN style="COLOR: maroon"&gt;"AddRange Before"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; listView1_ItemChecked(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: teal"&gt;ItemCheckedEventArgs&lt;/SPAN&gt; e)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; checkedEvents++;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;}&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;&lt;/PRE&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114321353476436573?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114321353476436573/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114321353476436573&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114321353476436573'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114321353476436573'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/winforms-listview-performance_21.html' title='WinForms ListView Performance - Initializing checked states'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114321209011231795</id><published>2006-03-20T09:54:00.000-05:00</published><updated>2006-03-24T10:17:38.593-05:00</updated><title type='text'>WinForms ListView Performance</title><content type='html'>&lt;P&gt;&lt;FONT face=Verdana size=2&gt;While working on improving the performance of the version control UI for Visual Studio Team Foundation Server, I encountered a number of potential problems with the WinForms ListView control.&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;As it turns out, adding items to a ListView can be VERY expensive if the list is sorted (as they should be).&amp;nbsp; Below is a test program I threw together to demonstrate some of the performance tradeoffs and mistakes I've encountered.&amp;nbsp; &lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The first example is "Normal mode".&amp;nbsp; I say this is normal because this is probably what most people do to start with - add a sorter to the ListView early on and be done with it - set it and forget it.&amp;nbsp; Then you just add your of items.&amp;nbsp; With a few hundred items it performs just fine.&amp;nbsp; However, once you get over a certain threshold the performance degrades significantly.&amp;nbsp; What happens is that ListView gets sorted after every ListViewItem is added to the Items collection.&amp;nbsp; This is very sloooooow.&amp;nbsp; On my computer it took 123,843 milliseconds to build the list and resulted in 70,621,263 calls to my Compare function.&amp;nbsp; OUCH!&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The next example, No Sorter1,&amp;nbsp;is the first optimization folks seem to make.&amp;nbsp; You remove the sorter, add your items, set the sorter back, and then call Sort.&amp;nbsp; This is a noticeable improvement.&amp;nbsp; The problem here is that there is no need to call Sort!&amp;nbsp; When you set the sorter back WinForms will call Sort for you.&amp;nbsp; On my computer it took&amp;nbsp;1812 milliseconds and resulted in 85,030 calls to my Compare function.&amp;nbsp; Much better!&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The next example, No Sorter2, is the optimization that a lot of folks miss because the previous one helped so much.&amp;nbsp; This one really matters when you have an expensive Compare function.&amp;nbsp; It's the same as the previous example with the unnecessary Sort call removed.&amp;nbsp; On my computer it took 1765 milliseconds and resulted in&amp;nbsp;55,226 calls to my Compare function.&amp;nbsp; Still better!&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Next is to use AddRange.&amp;nbsp; As it turns out WinForms has an opportunity to do an even better job than you internally because they have direct access to their interactions with the underlying Win32 ListView control.&amp;nbsp; On my computer it took&amp;nbsp;546 milliseconds and resulted in&amp;nbsp;55,226 calls to my Compare function.&amp;nbsp; This is LOTS better!&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;The final example uses the virtual&amp;nbsp;capabilities of the ListView object.&amp;nbsp; The way this works is you maintain your own cache of ListViewItem objects and supply them in a callback when you are asked.&amp;nbsp; This results in a dramatic speed up when dealing with a large number of items.&amp;nbsp; For this case I just used Array.Sort.&amp;nbsp; On my computer it took&amp;nbsp;46 milliseconds and resulted in&amp;nbsp;91,800 calls to my Compare function.&amp;nbsp; &lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;Note that in one of the cases I was working on,&amp;nbsp;the virtual mode performed worse than the AddRange and the No Sorter modes.&amp;nbsp; Our IComparer in that case is far more expensive than the simple one in my example.&lt;/FONT&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;FONT face=Verdana size=2&gt;MEASURE!!!&lt;/FONT&gt;&lt;/P&gt;&lt;FONT face=Verdana size=2&gt;&lt;FONT color=#0000ff size=2&gt;&lt;div class="codeblock"&gt;&lt;PRE&gt;&lt;P class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&lt;FONT color=#000000&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Collections;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.ComponentModel;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Data;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Drawing;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Text;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; System.Windows.Forms;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Courier New"&gt;namespace&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt; ListViewPerf&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;{&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;partial&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;Form1&lt;/SPAN&gt; : &lt;SPAN style="COLOR: teal"&gt;Form&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;const&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; ListEntryCount = 5000;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; seed = 7919;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;//&amp;nbsp; use a constant for repeatable results&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;String&lt;/SPAN&gt;[] strings;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;[] virtualItems;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;MySorter&lt;/SPAN&gt; sorter;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt; start;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; Form1()&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN style="COLOR: teal"&gt;Random&lt;/SPAN&gt; rand = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;Random&lt;/SPAN&gt;(seed);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strings = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;String&lt;/SPAN&gt;[ListEntryCount];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;for&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; i = 0; i &amp;lt; ListEntryCount; i++)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strings[i] = rand.Next().ToString();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sorter = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;MySorter&lt;/SPAN&gt;();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; InitializeComponent();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; PreCall()&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.ListViewItemSorter = &lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (!listView1.VirtualMode)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.Items.Clear();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;else&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; virtualItems = &lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.VirtualMode = &lt;SPAN style="COLOR: blue"&gt;false&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sorter.ResetCounter();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; start = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; PostCall(&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt; s)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN style="COLOR: teal"&gt;TimeSpan&lt;/SPAN&gt; ts = &lt;SPAN style="COLOR: teal"&gt;DateTime&lt;/SPAN&gt;.Now - start;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;MessageBox&lt;/SPAN&gt;.Show(s + &lt;SPAN style="COLOR: maroon"&gt;" took "&lt;/SPAN&gt; + ts.TotalMilliseconds.ToString() + &lt;SPAN style="COLOR: maroon"&gt;" milliseconds\nAnd resulted in "&lt;/SPAN&gt; +&amp;nbsp; sorter.Counter.ToString() + &lt;SPAN style="COLOR: maroon"&gt;" Compare calls"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; FillListViewWithStrings()&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;for&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; i = 0; i &amp;lt; ListEntryCount; i++)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt; lvi = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;(strings[i]);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.Items.Add(lvi);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; normalButton_Click(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: teal"&gt;EventArgs&lt;/SPAN&gt; e)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PreCall();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.ListViewItemSorter = sorter;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FillListViewWithStrings();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PostCall(&lt;SPAN style="COLOR: maroon"&gt;"Normal mode"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; noSorter1Button_Click(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: teal"&gt;EventArgs&lt;/SPAN&gt; e)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PreCall();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FillListViewWithStrings();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.ListViewItemSorter = sorter;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.Sort();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PostCall(&lt;SPAN style="COLOR: maroon"&gt;"No Sorter1 mode"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; noSorter2Button_Click(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: teal"&gt;EventArgs&lt;/SPAN&gt; e)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PreCall();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FillListViewWithStrings();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.ListViewItemSorter = sorter;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PostCall(&lt;SPAN style="COLOR: maroon"&gt;"No Sorter2 mode"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;[] BuildListViewItems()&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;[] items = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;[ListEntryCount];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;for&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; i = 0; i &amp;lt; ListEntryCount; i++)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; items[i] = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;(strings[i]);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;return&lt;/SPAN&gt; items;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; addRangeButton_Click(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: teal"&gt;EventArgs&lt;/SPAN&gt; e)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PreCall();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.ListViewItemSorter = sorter;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;[] items = BuildListViewItems();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.Items.AddRange(items);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PostCall(&lt;SPAN style="COLOR: maroon"&gt;"AddRange mode"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; virtualButton_Click(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: teal"&gt;EventArgs&lt;/SPAN&gt; e)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PreCall();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; virtualItems = BuildListViewItems();&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;Array&lt;/SPAN&gt;.Sort(virtualItems, sorter);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.VirtualMode = &lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; listView1.VirtualListSize = virtualItems.Length;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PostCall(&lt;SPAN style="COLOR: maroon"&gt;"Virtual mode"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; listView1_RetrieveVirtualItem(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: teal"&gt;RetrieveVirtualItemEventArgs&lt;/SPAN&gt; e)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; e.Item = virtualItems[e.ItemIndex];&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;MySorter&lt;/SPAN&gt; : &lt;SPAN style="COLOR: teal"&gt;IComparer&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; counter;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; ResetCounter()&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; counter = 0;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; Counter&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;get&lt;/SPAN&gt; { &lt;SPAN style="COLOR: blue"&gt;return&lt;/SPAN&gt; counter; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;IComparer&lt;/SPAN&gt;.Compare(&lt;SPAN style="COLOR: teal"&gt;Object&lt;/SPAN&gt; x, &lt;SPAN style="COLOR: teal"&gt;Object&lt;/SPAN&gt; y)&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt; lviX = (&lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;)x;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt; lviY = (&lt;SPAN style="COLOR: teal"&gt;ListViewItem&lt;/SPAN&gt;)y;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;counter++;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;return&lt;/SPAN&gt; &lt;SPAN style="COLOR: teal"&gt;String&lt;/SPAN&gt;.Compare(lviX.Text, lviY.Text);&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Courier New"&gt;}&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/PRE&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114321209011231795?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114321209011231795/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114321209011231795&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114321209011231795'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114321209011231795'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/winforms-listview-performance.html' title='WinForms ListView Performance'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114320811037364835</id><published>2006-03-20T08:40:00.000-05:00</published><updated>2006-03-24T08:48:30.380-05:00</updated><title type='text'>HippieSound Studios Construction Week 5</title><content type='html'>Doors roughed in:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-15-2006%20(1).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-15-2006%20(1).jpg" border="0" /&gt;&lt;/a&gt;&lt;p&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-15-2006%20(8).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-15-2006%20(8).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Live room primed:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-15-2006%20(2).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-15-2006%20(2).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Control room being painted:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-15-2006%20(6).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-15-2006%20(6).jpg" border="0" /&gt;&lt;/a&gt;&lt;p&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-15-2006%20(7).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-15-2006%20(7).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Grid ceiling for the back third of the live room begins:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-15-2006%20(4).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-15-2006%20(4).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Begin door sound proofing:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-17-2006%20(1).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-17-2006%20(1).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Both rooms are painted, covers are on the receptacles/switches, and the sconces are on:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-17-2006%20(2).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-17-2006%20(2).jpg" border="0" /&gt;&lt;/a&gt;&lt;p&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-17-2006%20(5).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-17-2006%20(5).jpg" border="0" /&gt;&lt;/a&gt;&lt;p&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-17-2006%20(6).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-17-2006%20(6).jpg" border="0" /&gt;&lt;/a&gt;&lt;p&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-17-2006%20(12).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-17-2006%20(12).jpg" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114320811037364835?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114320811037364835/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114320811037364835&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114320811037364835'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114320811037364835'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/hippiesound-studios-construction-week_20.html' title='HippieSound Studios Construction Week 5'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114251123757707269</id><published>2006-03-16T07:12:00.000-05:00</published><updated>2006-03-16T07:13:57.593-05:00</updated><title type='text'>Carvin HF2 now entering "Painting and Finishing"</title><content type='html'>WOW! The &lt;a href="http://hippietim.blogspot.com/2006/01/carvin-hf2-holdsworth-fatboy.html"&gt;Carvin HF2 "Holdsworth Fatboy"&lt;/a&gt; has transitioned from the "Body Construction and Sanding" stage to "Painting and Finishing".  Things are moving along pretty quickly!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114251123757707269?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114251123757707269/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114251123757707269&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114251123757707269'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114251123757707269'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/carvin-hf2-now-entering-painting-and.html' title='Carvin HF2 now entering &quot;Painting and Finishing&quot;'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114235470109322247</id><published>2006-03-14T11:38:00.000-05:00</published><updated>2006-03-14T11:45:01.106-05:00</updated><title type='text'>Carvin HF2 now entering "Body Construction and Sanding"</title><content type='html'>Finally!  I just checked the status of my custom order &lt;a href="http://hippietim.blogspot.com/2006/01/carvin-hf2-holdsworth-fatboy.html"&gt;Carvin HF2 "Holdsworth Fatboy"&lt;/a&gt; and it has transitioned from the "Neck construction" stage to "Body Construction and Sanding".  Very cool!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114235470109322247?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114235470109322247/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114235470109322247&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114235470109322247'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114235470109322247'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/carvin-hf2-now-entering-body.html' title='Carvin HF2 now entering &quot;Body Construction and Sanding&quot;'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114227021980774260</id><published>2006-03-13T12:01:00.000-05:00</published><updated>2006-03-13T12:16:59.826-05:00</updated><title type='text'>HippieSound Studios Construction Week 4</title><content type='html'>The first layer of drywall is going up in the live room:&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://hippietim.com/studio/studio%203-5-2006%20morning%20(1).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://hippietim.com/studio/studio%203-5-2006%20morning%20(1).jpg" border="0" /&gt;&lt;/a&gt; &lt;p&gt;&lt;a href="http://hippietim.com/studio/studio%203-5-2006%20morning%20(3).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://hippietim.com/studio/studio%203-5-2006%20morning%20(3).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;And now layer two is up in the live room - doesn't look much different does it? :)&lt;br /&gt;&lt;br /&gt;&lt;a href="http://hippietim.com/studio/studio%203-6-2006%20morning%20(1).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://hippietim.com/studio/studio%203-6-2006%20morning%20(1).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://hippietim.com/studio/studio%203-6-2006%20morning%20(3).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://hippietim.com/studio/studio%203-6-2006%20morning%20(3).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Mud is going up on the walls in the live room: &lt;p&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://hippietim.com/studio/studio%203-8-2006%20morning%20(2).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://hippietim.com/studio/studio%203-8-2006%20morning%20(2).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://www.blogger.com/"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://hippietim.com/studio/studio%203-8-2006%20morning%20(2).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I bought the flooring. This was NOT fun to bring downstairs. That stuff is heavy!&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://hippietim.com/studio/studio%203-8-2006%20morning%20(5).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://hippietim.com/studio/studio%203-8-2006%20morning%20(5).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;And still more mud in the live room! &lt;p&gt;&lt;a href="http://hippietim.com/studio/studio%203-10-2006%20(2).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://hippietim.com/studio/studio%203-10-2006%20(2).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://hippietim.com/studio/studio%203-10-2006%20(3).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://hippietim.com/studio/studio%203-10-2006%20(3).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;We have electricity!!!!&lt;br /&gt;&lt;br /&gt;The control room is primed and the areas around the electric boxes are painted. I haven't painted the other areas because some touch ups are needed. &lt;p&gt;&lt;a href="http://hippietim.com/studio/studio%203-13-2006%20morning%20(1).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://hippietim.com/studio/studio%203-13-2006%20morning%20(1).jpg" border="0" /&gt;&lt;/a&gt; &lt;p&gt;&lt;a href="http://hippietim.com/studio/studio%203-13-2006%20morning%20(2).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://hippietim.com/studio/studio%203-13-2006%20morning%20(2).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The live room has the wall sconce fixtures up and the areas around the light fixtures and plugs are primed and painted - again the rest of the drywall isn't finished up.&lt;br /&gt;&lt;p&gt;&lt;a href="http://hippietim.com/studio/studio%203-13-2006%20morning%20(5).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://hippietim.com/studio/studio%203-13-2006%20morning%20(5).jpg" border="0" /&gt;&lt;/a&gt; &lt;p&gt;&lt;a href="http://hippietim.com/studio/studio%203-13-2006%20morning%20(7).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://hippietim.com/studio/studio%203-13-2006%20morning%20(7).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;As always, way more pictures than you really care to see are available here: &lt;a href="http://hippietim.com/studio/studio.htm"&gt;http://hippietim.com/studio/studio.htm&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114227021980774260?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114227021980774260/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114227021980774260&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114227021980774260'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114227021980774260'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/hippiesound-studios-construction-week_13.html' title='HippieSound Studios Construction Week 4'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114149650804858243</id><published>2006-03-04T13:08:00.000-05:00</published><updated>2006-03-04T13:24:51.526-05:00</updated><title type='text'>HippieSound Studios Construction Week 3</title><content type='html'>Mud is going up in the control room ceiling:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-1-2006%20morning%20(3).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-1-2006%20morning%20(3).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The soffit is up in the live room:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-1-2006%20morning%20(5).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-1-2006%20morning%20(5).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-1-2006%20morning%20(7).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-1-2006%20morning%20(7).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;First coat of mud complete in the control room:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-2-2006%20morning%20(1).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-2-2006%20morning%20(1).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The live room soffit gets some drywall:&lt;br /&gt;&lt;br /&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-2-2006%20morning%20(6).jpg" border="0" /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-2-2006%20morning%20(8).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-2-2006%20morning%20(8).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The gas line gets its own box:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-2-2006%20morning%20(10).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-2-2006%20morning%20(10).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The wall outside the studio area has drywall:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-3-2006%20morning%20(2).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-3-2006%20morning%20(2).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-3-2006%20morning%20(3).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-3-2006%20morning%20(3).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Most of the hat channel is up in the live room and the ceiling is hung (2 layers of drywall):&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-4-2006%20morning%20(1).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-4-2006%20morning%20(1).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-4-2006%20morning%20(2).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-4-2006%20morning%20(2).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;More drywall going up:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%203-4-2006%20morning%20(10).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%203-4-2006%20morning%20(10).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I've decided to go with wood laminate flooring. Man, there are a lot of choices out there. I was at Home Depot this morning and found stuff they are blowing out that should do the trick.&lt;br /&gt;&lt;br /&gt;I've picked out wall sconces for the live room too. &lt;/p&gt;&lt;p&gt;A lot more pictures here:  &lt;a href="http://www.hippietim.com/Studio/Studio.htm"&gt;http://www.hippietim.com/Studio/Studio.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Stay tuned...&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114149650804858243?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114149650804858243/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114149650804858243&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114149650804858243'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114149650804858243'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/hippiesound-studios-construction-week.html' title='HippieSound Studios Construction Week 3'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114127906471431842</id><published>2006-03-02T00:53:00.000-05:00</published><updated>2006-03-02T00:57:44.730-05:00</updated><title type='text'>Freebird</title><content type='html'>That came on the radio the other day.  I hadn't heard it in a while.  What a fantastic song.  The music is grand.  It's got highs and lows.  It's got dynamics.  It's soothing.  It's exciting.  The lyrics are fantastic and Mr. Van Zandt sang his ass off on that tune.&lt;br /&gt;&lt;br /&gt;It's a shame the song has gotten this awful stigma by awful bar bands.&lt;br /&gt;&lt;br /&gt;It is a truly beautiful and exciting tune. Of course everybody *thinks* they can play it - they're wrong. Playing Freebird WELL is not so simple. Sure you all know how to play the coupla pentatonic riffs in G.&lt;br /&gt;&lt;br /&gt;There's more to it than that though.&lt;br /&gt;&lt;br /&gt;It's hard to explain.&lt;br /&gt;&lt;br /&gt;But I've seen so many people absolutely butcher that tune and you could tell by the looks on their faces that they thought it was beneath them or some sort of joke - the joke was on them though.&lt;br /&gt;&lt;br /&gt;Seeing those sorts of bozos butcher a tune like that makes me yell out "Play something you KNOW!" (I know, it's almost as much of a cliche as yelling Freebird).&lt;br /&gt;&lt;br /&gt;The last group I was in played Freebird for what became my farewell performance with the band.  The other guys treated it like a joke.  The joke was on them.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114127906471431842?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114127906471431842/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114127906471431842&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114127906471431842'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114127906471431842'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/03/freebird.html' title='Freebird'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114119076593182483</id><published>2006-02-28T23:54:00.000-05:00</published><updated>2006-03-01T00:26:06.006-05:00</updated><title type='text'>Musical Journey Part 5</title><content type='html'>So hanging out with Phil, Brian, and co. was great.  I kind of wonder what those guys thought of me sometimes.  They were all a couple years older and had a lot more experience playing and probably life in general. &lt;br /&gt;&lt;br /&gt;I went to my first keg party because Brian's amp died on him.  They called me up looking for an amp to use.  My parents were cool with it so they came and picked me and my Acoustic 134 amp up and headed off to the party.  I don't remember much about the party (no I wasn't drinking).  I just remember thinking it was pretty damn cool to see a live band jamming and everyone having a great time.&lt;br /&gt;&lt;br /&gt;Mike D. was at a different high school and Mike B. was in junior high so we weren't seeing a whole lot of each other but we did manage to get together frequent enough to keep the "band" going.  Mike D. got us hooked up with a drummer named Tony Morosini (sp?).  So another variant of the group got going.  We started experimenting with some more complex music such as Rush and Led Zeppelin.  Tony loved Rush and Zeppelin because the drums were challenging and the rest of us liked them because the arrangements were interesting and we had a lot of things to learn.&lt;br /&gt;&lt;br /&gt;Phil and Brian formed a new band with a new bassist (Randy) and drummer (Reggie) called Gallows Pole.  They were a better band for sure - much more solid and tight.  My parents left town for a weekend at the same time that Gallows Pole needed rehearsal space.  There's no mystery as to what happened next.  They basically moved in for a few days.  It was pretty cool.  Just a weekend of music and hanging out.  Phil managed to put a guitar case through a window pane in the side door.  A new window pane was procured at the local hardware store.  Note that I said procured vs. purchased.  I don't remember who actually didn't pay for it, I just know that a new window pane became available.  When Phil and I reconnected a few years ago he sent me a CD of some of the music recorded that weekend - how cool is that!?!?!&lt;br /&gt;&lt;br /&gt;I floated around playing with various people - nothing really went anywhere but it was always good to play.  There were a lot of kids that played - Ricky Adams played drums, his twin brother played guitar, Eddie Vaio (sp?) played guitar, Scott Carter (drums), John...etc.  Pretty much every other block around us in our whole area had one or more people that gave music a go in some form.  This was really a fantastic time to be playing.  Really, it was great.&lt;br /&gt;&lt;br /&gt;So at this point I was hip to Kiss, a lot of 60's rock (Stones, Beatles, Hendrix, etc.), some more progressive stuff like Rush and Zeppelin.  I was aware of Van Halen and some current groups but I was listening to their influences rather than them directly.&lt;br /&gt;&lt;br /&gt;I knew there was more to learn so I started seeking out more stuff to learn.  I was pretty much self taught - I could read music but very slooooooowly so that wasn't really an option.  For you guitar players following along, there wasn't an abundance of instructional stuff for people wanting to learn rock/pop music - it was all the books that teach you how to play Yankee Doodle Dandy.  And there were no Internet sites filled with tablature for every song you'd ever want to know.  I learned to use my ears.  I would put a cassette in my radio each night and press record.  The reason for doing it at night was less commercials and back then they used to actually play the whole side of an album pretty often.  This was basically Napster in 1980 :)  The next day I just learned as much as I could.  Some things were stupid songs I didn't like and others were beyond my abilities but it was still valuable to try and learn as much as I could - everything from Joan Jett to Yes and everything in between.  To this day I can probably play at least part of a few thousand songs LOL.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114119076593182483?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114119076593182483/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114119076593182483&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114119076593182483'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114119076593182483'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/02/musical-journey-part-5.html' title='Musical Journey Part 5'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114118864281773048</id><published>2006-02-28T23:41:00.000-05:00</published><updated>2006-02-28T23:50:42.843-05:00</updated><title type='text'>HippieSound Studios Construction Week 2</title><content type='html'>Ok, this post is late as we're into Week 3 now. Anyhow...&lt;br /&gt;&lt;br /&gt;The vinyl barrier is going up in the "live" room:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%202-20-2006%20(6).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%202-20-2006%20(6).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The control room is being insulated:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%202-20-2006%20(7).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%202-20-2006%20(7).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The control insulation is pretty much done and the drywall is going up:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%202-23-2006%20morning%20(2).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%202-23-2006%20morning%20(2).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The drywall is all hung in the control room:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%202-23-2006%20evening%20(1).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%202-23-2006%20evening%20(1).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Most of the vinyl barrier is up in the live room and the hat channel is going up:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%2002-25-2006%20morning%20(3).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%2002-25-2006%20morning%20(3).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;More pictures here:  &lt;a href="http://www.hippietim.com/Studio/Studio.htm"&gt;http://www.hippietim.com/Studio/Studio.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I've decided on some changes to the way the live room is being built.  I am having the isolation clips and channel installed on all the walls and we are going to do a double layer of drywall.   The second layer will be 1/2".   The reason for these changes is that I figure that I'm really not going to have another shot at this anytime so I would like to just do it as close to "right" as I can.  I ordered more isolation clips today and had them sent via 2-day air so progress is not stalled.  Man, those clips are expensive!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114118864281773048?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114118864281773048/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114118864281773048&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114118864281773048'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114118864281773048'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/02/hippiesound-studios-construction-week_28.html' title='HippieSound Studios Construction Week 2'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114048547887435503</id><published>2006-02-20T20:30:00.000-05:00</published><updated>2006-02-20T20:31:18.896-05:00</updated><title type='text'>Red State, Meet Police State</title><content type='html'>&lt;a href="http://www.boiseweekly.com/gyrobase/Content?oid=oid%3A158729"&gt;http://www.boiseweekly.com/gyrobase/Content?oid=oid%3A158729&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;That's great. Our department of homeland security budget has a slot for someone to patrol parking lots for bumper stickers in Idaho. Brilliant.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114048547887435503?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114048547887435503/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114048547887435503&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114048547887435503'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114048547887435503'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/02/red-state-meet-police-state.html' title='Red State, Meet Police State'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114035738496868424</id><published>2006-02-19T08:34:00.000-05:00</published><updated>2006-02-19T09:01:28.233-05:00</updated><title type='text'>HippieSound Studios Construction Week 1</title><content type='html'>I am having part of my basement finished off for a home studio/band room. The first week of construction is done. Yipee!!!!&lt;br /&gt;&lt;br /&gt;Here is the plan:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studioplan.jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studioplan.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Here is what it looked like to start:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio-02-08-2006%20(1).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio-02-08-2006%20(1).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio-02-08-2006%20(4).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio-02-08-2006%20(4).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Then I cleaned it up a bit:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/hippiesoundstudios%20(1).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/hippiesoundstudios%20(1).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/hippiesoundstudios%20(3).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/hippiesoundstudios%20(3).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;After the first day of framing:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%202-14-2006%20(1).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%202-14-2006%20(1).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%202-14-2006%20(7).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%202-14-2006%20(7).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;All the walls are up:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%202-15-2006%20(4).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%202-15-2006%20(4).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%202-15-2006%20(6).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%202-15-2006%20(6).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The soffit is up in the control room and electrical work is under way:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%202-18-2006%20(5).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%202-18-2006%20(5).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.hippietim.com/Studio/studio%202-18-2006%20(1).jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://www.hippietim.com/Studio/studio%202-18-2006%20(1).jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;More pictures here: &lt;a href="http://www.hippietim.com/Studio/Studio.htm"&gt;http://www.hippietim.com/Studio/Studio.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I am doing a decent amount of stuff for sound quality and isolation.&lt;br /&gt;&lt;br /&gt;The band room (larger room):&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;All four walls are getting a Mass Load Vinyl (MLV) barrier installed - this is a VERY heavy 1/8" thick sound isolation material - it weighs 1lb per square foot and is very dense. This goes on before the drywall. &lt;li&gt;Two of the walls are concrete and almost completely underground - the walls are 2x4 and are about 1" off the concrete wall - no sound is escaping this way &lt;li&gt;The other two walls are 2x6 - after the MLV goes on then hat channel will be run on special sound isolation clips to float the walls for isolation purposes - &lt;a href="http://www.kineticsnoise.com/arch/isomax/index.html"&gt;http://www.kineticsnoise.com/arch/isomax/index.html&lt;/a&gt;&lt;li&gt;The ceiling is trickier because about 2/5 of it houses plumbing, duct work, gas lines etc. - basically a bunch of stuff I want to be able to access over time. So the solution is to drywall as much as possible using the MLV and hat channel/isolation clips. The remainder will be grid/suspended ceiling tile. The tile will be drywall backed with MLV. &lt;li&gt;The window between the rooms is still TBD - probably a dual pane laminated window. &lt;li&gt;The doors will be exterior and will get the MLV treatment and acoustic foam on top of that. &lt;li&gt;To minimize the number of holes in the ceiling there will be no ceiling lights. I am going with wall sconces instead. I'm still looking for cool ones. &lt;li&gt;The walls will get acoustic tile (Auralex or similar). &lt;/li&gt;&lt;li&gt;The floor is concrete - I am investigating if the MLV is necessary - I don't think it is. In any case, I will use a thick pad and commercial grade carpet. &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;The control room is simpler since the concern here is just making a room that sounds good rather than worrying about sound escaping too much since it won't be anywhere near as loud as the other room.&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The walls and probably the ceiling will be double drywalled - this will allow me to crank things a good bit - it won't be as effective as the MLV but it's considerably cheaper.&lt;li&gt;The walls will get the acoustic tile treatment as needed as well. &lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114035738496868424?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114035738496868424/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114035738496868424&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114035738496868424'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114035738496868424'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/02/hippiesound-studios-construction-week.html' title='HippieSound Studios Construction Week 1'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-114019162073118527</id><published>2006-02-17T10:41:00.000-05:00</published><updated>2006-02-17T10:53:40.756-05:00</updated><title type='text'>Me and Michael</title><content type='html'>Remember Michael from &lt;a href="http://hippietim.blogspot.com/2006/01/musical-journey-part-3.html"&gt;Musical Journey Part 3&lt;/a&gt;? Tragically, Michael passed away in 2004. I hadn't seen him in years - we spoke a time or two but never quite managed to run into each other. I had moved to the Seattle area and he had moved to Florida. Then he moved to Maryland and I moved to North Carolina. The classic cliche' applies here - see your loved ones whenever you can because you truly never know when it will be the last time. Man, I'd love to have just a few moments to say goodbye to him.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://hackolutions.com/images/MeAndMikeBrandWithFirstGuitars.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px; WIDTH: 160px; CURSOR: hand" alt="" src="http://hackolutions.com/images/MeAndMikeBrandWithFirstGuitars.jpg" border="0" /&gt;&lt;/a&gt;After he passed away, my mother had found an old photo of Michael and I playing guitars. She had it framed and gave it to Michael's folks. Over this last winter break we visited Michael's parents and his dad pulled this picture out. Wow. That brought back so many great memories. Michael's dad scanned the photo and sent me a copy. That's me with my first real electric guitar - a Fender Telecaster in Antigua finish and Michael with his brand new Fender Musicmaster.&lt;br /&gt;&lt;br /&gt;Thanks for everything Michael.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-114019162073118527?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/114019162073118527/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=114019162073118527&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114019162073118527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/114019162073118527'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/02/me-and-michael.html' title='Me and Michael'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113873809378415974</id><published>2006-01-31T15:07:00.000-05:00</published><updated>2006-01-31T23:22:04.096-05:00</updated><title type='text'>NAMM 2006 Pictures</title><content type='html'>For your viewing pleasure - pictures of &lt;a href="http://hippietim.com/NAMM2006/NAMM2006.htm"&gt;NAMM 2006&lt;/a&gt; (at least the stuff I cared about).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113873809378415974?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113873809378415974/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113873809378415974&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113873809378415974'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113873809378415974'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/01/namm-2006-pictures.html' title='NAMM 2006 Pictures'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113872326777475447</id><published>2006-01-31T10:45:00.000-05:00</published><updated>2006-01-31T12:25:47.146-05:00</updated><title type='text'>Carvin HF2 "Holdsworth Fatboy"</title><content type='html'>&lt;a href="http://www.carvin.com/products/guitar.php?ItemNumber=HF2"&gt;&lt;img style="FLOAT: right; MARGIN: 0px 0px 10px 10px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger/4392/1969/200/HF2.jpg" border="0" /&gt;&lt;/a&gt;As I mentioned in my &lt;a href="http://hippietim.blogspot.com/2006/01/namm-2006.html"&gt;NAMM 2006&lt;/a&gt; post, I ordered a custom guitar from Carvin. It's a model designed for the legendary fusion guitarist &lt;a href="http://www.therealallanholdsworth.com/allanshome.htm"&gt;Allan Holdsworth&lt;/a&gt;. They have two Holdsworth models, I opted for the hollow body &lt;a href="http://www.carvin.com/products/guitar.php?ItemNumber=HF2"&gt;HF2&lt;/a&gt;. Beyond the stock features, I added a flamed koa top, matching koa headstock overlay, abalone inlays, coil taps for the pickups, and tung oiled neck.&lt;br /&gt;&lt;br /&gt;Carvin is pretty great to deal with - they are really setup for building custom instruments. Obviously, they &lt;i&gt;should&lt;/i&gt; be since that is their business but many guitar makers are surprisingly bad at planning, scheduling, and communicating with their customers.&lt;br /&gt;&lt;br /&gt;Carvin's latest innovation is quite nice. It's called &lt;a href="http://www.carvin.com/guitartraq/about/"&gt;GuitarTraq&lt;/a&gt;. For quite some time now, they have been installing security chips (&lt;a href="http://www.snagg.com/"&gt;SNAGG&lt;/a&gt;) in guitars to help locate an instrument if it is lost or stolen. They've taken advantage of that for another great use. You enter your invoice # on a web page and they tell you exactly where your instrument is in the building process.&lt;br /&gt;&lt;br /&gt;Currently my guitar is at the neck construction station.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113872326777475447?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113872326777475447/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113872326777475447&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113872326777475447'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113872326777475447'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/01/carvin-hf2-holdsworth-fatboy.html' title='Carvin HF2 &quot;Holdsworth Fatboy&quot;'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113872211850987404</id><published>2006-01-31T10:09:00.000-05:00</published><updated>2006-01-31T10:42:00.363-05:00</updated><title type='text'>What's up with the title?</title><content type='html'>&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px;" alt="" src="http://photos1.blogger.com/blogger/4392/1969/200/disraeligears.jpg" border="0" /&gt;My dad was curious to know why my blog was called "Tiny Purple Fishes". This goes back to high school when I discovered the band Cream (Eric Clapton, Jack Bruce, and Ginger Baker). They lyrics come from a song called "Tales of Brave Ulysses" on the "Disraeli Gears" album. This is my favorite Cream tune. I always thought the lyrics were funny but didn't know what they were about. The music was written by Eric Clapton but the lyrics were written by Martin Sharp who is also the fellow that did the art work for the "Disraeli Gears" album. Apparently Mr. Sharp was a fan of the writings of Homer as the Ulysses here is from the Odyssey. I need to actually read that book. I'd say the lyrics and the album cover demonstrate that Mr. Sharp was "partaking" in the 60's. Anyhow, here are the lyrics to the tune:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;You thought the leaden winter would bring you down forever&lt;br /&gt;But you rode upon a steamer to the violence of the sun&lt;br /&gt;&lt;br /&gt;And the colours of the sea bind your eyes with trembling mermaids&lt;br /&gt;And you touch the distant beaches with tales of brave Ulysses&lt;br /&gt;How his naked ears were tortured by the sirens sweetly singing&lt;br /&gt;For the sparkling waves are calling you to kiss their white laced lips&lt;br /&gt;&lt;br /&gt;And you see a girl's brown body dancing through the turquoise&lt;br /&gt;And her footprints make you follow where the sky loves the sea&lt;br /&gt;And when your fingers find her, she drowns you in her body&lt;br /&gt;Carving deep blue ripples in the tissues of your mind&lt;br /&gt;&lt;br /&gt;The &lt;span style="color:purple;"&gt;&lt;b&gt;tiny purple fishes&lt;/b&gt;&lt;/span&gt; run laughing through your fingers&lt;br /&gt;And you want to take her with you to the hard land of the winter&lt;br /&gt;&lt;br /&gt;Her name is Aphrodite and she rides a crimson shell&lt;br /&gt;And you know you cannot leave her for you touched the distant sands&lt;br /&gt;With tales of brave Ulysses, how his naked ears were tortured&lt;br /&gt;By the sirens sweetly singing.&lt;br /&gt;&lt;br /&gt;The &lt;span style="color:purple;"&gt;&lt;b&gt;tiny purple fishes&lt;/b&gt;&lt;/span&gt; run lauging through your fingers&lt;br /&gt;And you want to take her with you to the hard land of the winter&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113872211850987404?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113872211850987404/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113872211850987404&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113872211850987404'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113872211850987404'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/01/whats-up-with-title.html' title='What&apos;s up with the title?'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113859888006442694</id><published>2006-01-29T23:53:00.000-05:00</published><updated>2006-01-30T00:49:48.386-05:00</updated><title type='text'>Musical Journey Part 4</title><content type='html'>Ok, at this point Mike and I had nice guitars and amps. Therefore, we need to start a band. Right?&lt;br /&gt;&lt;br /&gt;Well, we did.&lt;br /&gt;&lt;br /&gt;Somehow my friend Mike DeLaFleur ended up with a bass - I really don't remember how that came about. I think our first drummer was Kevin Dehaven who went to the church I did and was friends with Mike D.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;...this is where the flashback visual effect goes...&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Wait. I just remembered. Before I had my own electric, I played Al's electric guitar at the end of year party/celebration for 7th grade. Of course I didn't really know any songs at this point so it was not good.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;...now returning...&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;So this first band formed when I was about in the 8th grade I believe. We learned the usual garage band tunes - Purple Haze, My Generation, etc. I remember having much fun.&lt;br /&gt;&lt;br /&gt;One day, Al Quinlan brought over Al DiMeola's Elegant Gypsy album. Holy crap! How was somebody supposed to play that stuff? No f**kin' way! That was my first taste of so-called fusion. Al DiMeola's music and guitar playing was beyond anything I'd heard to that point. It was this amazing blend of styles. It had the fire of rock with the rhythmic and harmonic sensibilities of jazz and latin music. This remains one of my favorite albums of all time.&lt;br /&gt;&lt;br /&gt;Once I started high school I found out that another kid on the block played guitar. I met Brian Causey at the bus stop. As it turns out he was in a band called Mobius. Through Brian I met Donald Davis (drums), Pat Beltran (bass/vocals), and Phil Hurd (guitar). Phil was amazing. That guy got into playing more than anyone I had met. And he could play!&lt;br /&gt;&lt;br /&gt;Phil was a total Rolling Stones nut. It didn't take me long to become one as well. The turning point was hearing the live version of "Sympathy for the Devil" on "Get Yer Ya-ya's Out".  The guitar on that was magic.  Keith Richards was brilliant on that and Mick Taylor's playing was lyrical, challenging, and absolutely beautiful.  I hung around Phil and co. as much as I could. I learned a lot of Stones tunes too. Needless to say the band with the two Mike's played a lot of Stones tunes :)&lt;br /&gt;&lt;br /&gt;During this period I was exposed to a lot of music.  Phil got me into Hendrix, The Beattles, Cream, Chuck Berry, Janis Joplin, Eric Clapton, Led Zeppelin, Joe Walsh, The Who, Jefferson Airplane, and so much more.  Yep, I was going backwards through rock music history - this was 1979/80 after all and most of these folks made their mark in the 60's.  This was a great time for me.  I really opened my eyes to a lot of stuff and began exploring ways to play this stuff myself.  Phil taught me a lot of stuff which helped a lot.  I definitely credit him with a lot of my early development as a player.&lt;br /&gt;&lt;br /&gt;All this typing and I'm still not in the 10th grade yet.  I guess that will be next.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113859888006442694?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113859888006442694/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113859888006442694&amp;isPopup=true' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113859888006442694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113859888006442694'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/01/musical-journey-part-4.html' title='Musical Journey Part 4'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113859674080136277</id><published>2006-01-29T23:48:00.000-05:00</published><updated>2006-01-29T23:52:20.846-05:00</updated><title type='text'>Floyd Rose V</title><content type='html'>Ok, I got the call from Brian at Chuck Levin's yesterday. The &lt;a href="http://hippietim.blogspot.com/2006/01/floyd-rose-arrow.html"&gt;V I mentioned the other day&lt;/a&gt; is on order.   Apparently it is one Floyd's top sellers so it will be 4-6 weeks for them to make me one although Brian said he might be able to wrestle one from them sooner.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113859674080136277?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113859674080136277/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113859674080136277&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113859674080136277'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113859674080136277'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/01/floyd-rose-v.html' title='Floyd Rose V'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113837898678052433</id><published>2006-01-27T10:58:00.000-05:00</published><updated>2006-01-27T11:36:24.890-05:00</updated><title type='text'>Musical Journey Part 3</title><content type='html'>It all started with Michael. No, not that Michael. Michael Brand. We were good friends from grade school on. He's the first person I got drunk with - we snuck wine or something at his bar mitzvah.&lt;br /&gt;&lt;br /&gt;Mike and I were big Kiss fans. My first Kiss album was Destroyer. I thought Ace was a funny name for a girl - LOL. We started getting into music pretty seriously at that point. Well, whatever serious means to a 5th or 6th grader.&lt;br /&gt;&lt;br /&gt;We both wanted to be Peter Criss. But, I had bongos so more often than not I got to be Peter Criss. I used to tape nails to the edge so that when you hit the bongo it would make the nails pop and rattle like a snare drum. Clever, eh? I wonder what happened to them.&lt;br /&gt;&lt;br /&gt;Mike's dad is a photographer and managed to wrangle some tickets for us to go see Kiss at the Capital Center in Landover, MD. It was our first concert and we were blown away. Hell yeah, that's what we want to do!!! That concert is a fun story all by itself - I'll save that for another entry.&lt;br /&gt;&lt;br /&gt;We used to get Hit Parader and all those other magazines back then and cut out the Kiss pictures and stick them on the wall with other Kiss posters and stuff. After all, he who had the most pictures was the biggest fan.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hackolutions.com/gear/currentgear/suzuki/suzukishot.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 160px; CURSOR: hand" alt="" src="http://www.hackolutions.com/gear/currentgear/suzuki/suzukishot.jpg" border="0" /&gt;&lt;/a&gt;I don't remember the exact order of things at this point but we both ended up with acoustic guitars. My grandparents bought me a small bodied classical guitar which I still have. I don't play it much anymore but it is my most cherished instrument. I used to stick the microphone from a cassette recorder into the sound hole to make it an electric guitar.&lt;br /&gt;&lt;br /&gt;The first song we learned was "More Than A Feeling" by Boston.  I knew how to read music, albeit really slowly, so I figured it out from some sheet music.  The sheet music we got had the wrong chord at one spot - it said Eb when it should have been Em - that part of the song never sounded too good when we played it :)&lt;br /&gt;&lt;br /&gt;Next, my mom got me the sheet music to "Stairway to Heaven" because it was supposedly a popular tune.  Well, I'd never heard the song and this was arranged for piano so needless to say I was very surprised when I actually heard the song for the first time.&lt;br /&gt;&lt;br /&gt;By this time we had moved to another neighborhood and this kid named Al Quinlan had an electric guitar that he would let me play. It was Global. It ruled. Well, probably not but what did I know. I borrowed it all the time.&lt;br /&gt;&lt;br /&gt;Sometime after that Mike's dad scored him a brand new Fender Musicmaster from Manny's in New York and then a brand new Fender Champ from Chuck Levin's in Wheaton, MD. He had a real electric guitar!!! I was pretty jealous.&lt;br /&gt;&lt;br /&gt;My mom got me an electric guitar with a little amp at a yard sale. I think it was a Global like Al's. Now I too had an electric guitar. My parents got me a second hand Acoustic 134 4x10 combo amp for Christmas that year. That thing was freakin' LOUD. Even by today's standards that thing is loud.&lt;br /&gt;&lt;br /&gt;My dad took me to Giant Music in Falls Church, VA one day and they let me plug in a nice Les Paul copy. Man, that was soooo much better than "the Global". My dad quickly realized the difference in quality between my guitar and the ones in the store. I'm not sure how this all unfolded exactly but my recollection of the day is that after we left the store my dad flipped through the classified ads in the Washington Post, made some phone calls, and the next thing you know we're in the car going to someone's house to check out a guitar. I was fairly oblivious to what was really happening at the time for some reason - I daydreamed a lot. But before you know it my dad paid the dude $175 for a Fender Telecaster. This was a fantastic freakin' guitar. I mean it was *really* good. So now I had a real good electric guitar and the loudest amp in the neighborhood. Hell yes. It's gettin' good now! As it turns out the finish on that Tele was called Antigua and was extremely rare - particularly on a Tele. We'll revisit that in a later topic.&lt;br /&gt;&lt;br /&gt;So now Mike and I both had Fender guitars and nice amplifiers.  What else could we need?  Veneman Music in Springfield, VA had the answer!  An Electro Harmonix Big Muff distortion/fuzz box.  Much fun was had with that pedal.  I wanted the MXR Distortion+ or the Boss DS-1 but those were both like 40 or 50 bucks and the Big Muff was 19.99.&lt;br /&gt;&lt;br /&gt;Next we'll be getting our ya-ya's out...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113837898678052433?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113837898678052433/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113837898678052433&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113837898678052433'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113837898678052433'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/01/musical-journey-part-3.html' title='Musical Journey Part 3'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113836938244966666</id><published>2006-01-27T08:43:00.000-05:00</published><updated>2006-01-27T09:03:44.100-05:00</updated><title type='text'>Testing 1-2-3</title><content type='html'>Just testing the feature that let's you e-mail your blog.  I'm not sure why I'd want to do this but I'm sure that someday I will be eternally grateful that I can.&lt;br /&gt;&lt;br /&gt;Yippee!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113836938244966666?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113836938244966666/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113836938244966666&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113836938244966666'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113836938244966666'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/01/testing-1-2-3.html' title='Testing 1-2-3'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113830262952321576</id><published>2006-01-26T18:07:00.000-05:00</published><updated>2006-01-26T18:10:31.460-05:00</updated><title type='text'>Musical Journey Part 2</title><content type='html'>It all started with Michael. Yes, that Michael. No, I'm not kidding. Just about my earliest memories of being "into" music were inspired by the Jackson 5 Saturday morning cartoon show. I sure was surprised to find out there really was a "real" Jackson 5 and that Michael was this little kid like me.&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;img style="FLOAT: right; MARGIN: 0px 0px 10px 10px;" alt="" src="http://photos1.blogger.com/blogger/4392/1969/200/jackson5.gif" border="0" /&gt;I *really* loved there music. I still do. I really enjoy most of the music that came out of Motown as well. I don't remember which birthday it was (probably 7 or 8) but one year my cool surprise present was the Jackson 5's Greatest Hits LP and my mother made my birthday cake look like a record with the Jackson's dancing on top (probably pipe cleaner figures). &lt;/p&gt;&lt;p&gt;There was a sincerity in that music that really resonated with me. In retrospect I realize what a lasting impression this sincerity/honesty/integrity in music has meant to me. Basically, it means I really hate the poser music much more than it probably deserves. I can't stand when you hear music where people are forcing it like it's a job. I get that people need to make a living, they just won't get any of my money for their uninspired drivel.&lt;/p&gt;&lt;img style="FLOAT: right; MARGIN: 0px 0px 10px 10px; " alt="" src="http://photos1.blogger.com/blogger/4392/1969/200/tillerman.jpg" border="0" /&gt; As I grew a bit older I remember my parents had the Tea for the Tillerman album by Cat Stevens. My father also had the 8-track tape and we'd listen to that driving around. That is a truly remarkable album - I listen to it to this day. Great lyrics and great arrangements. Again, a truly open and honest sounding record. Man, sometimes I miss the days before computers.&lt;br /&gt;&lt;br /&gt;I remember hearing Terry Jacks' classic "Seasons in the Sun" sometime around then as well. This song really struck a chord with me for some reason. I suppose the production is dated and cheesy by modern standards but the lyrics and melody are really good. For some reason we couldn't find the record anywhere. I suppose I "discovered" it past it's prime :) I remember my mom and I ended up finding it on some sort of "superstar hits" LP when we were in Germany for vacation one summer. I remember the rest of that LP being pretty lame.&lt;br /&gt;&lt;br /&gt;At some point during elementary school I remember my mom teaching me how to play the recorder a little bit. I still remember the notes on the sheet music were color coded and REALLY BIG. At some point around the 2nd or 3rd grade (I think), I remember taking some piano lessons. I didn't like it. Not at all. Probably mostly because my piano teacher had &lt;em&gt;old lady&lt;/em&gt; breath. Yucko. Plus, I had already discovered there was more to music than stuff like Mary Had a Little Lamb.&lt;br /&gt;&lt;br /&gt;Stay tuned for the hottest band in the world...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113830262952321576?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113830262952321576/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113830262952321576&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113830262952321576'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113830262952321576'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/01/musical-journey-part-2.html' title='Musical Journey Part 2'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113830508231278670</id><published>2006-01-26T14:48:00.000-05:00</published><updated>2006-01-26T15:48:37.050-05:00</updated><title type='text'>I am in limbo</title><content type='html'>&lt;p&gt;I took this enlightenment test. &lt;a href="http://www.transtopia.org/quiz.html"&gt;http://www.transtopia.org/quiz.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Here are my results. Kinda funny.&lt;/p&gt;&lt;blockquote&gt;&lt;em&gt;MEMETIC SHOCK LEVEL 02 (0-4): above-average. A mixed bag of genuine wisdom and deeply ingrained taboos &amp; irrational hangups. The domain of either conservative or politically correct (armchair) philosophers and people who can't make up their frickin' minds (oh, and let's not forget the puerile LAMERS who hit 'score it' without changing/reading anything; you know who you are...). Limbo.&lt;/em&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113830508231278670?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113830508231278670/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113830508231278670&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113830508231278670'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113830508231278670'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/01/i-am-in-limbo.html' title='I am in limbo'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113828946677779959</id><published>2006-01-26T10:24:00.000-05:00</published><updated>2006-01-26T19:30:37.150-05:00</updated><title type='text'>Floyd Rose Arrow</title><content type='html'>&lt;a href="http://hippietim.com/NAMM2006/NAMM%202006%20(49).jpg"&gt;&lt;img style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 160px; CURSOR: hand" alt="" src="http://hippietim.com/NAMM2006/NAMM%202006%20(49).jpg" border="0" /&gt;&lt;/a&gt;Man, I've been eyeballing these guitars since I first saw the prototype that JT pulled out at the Floyd Rose facility in Redmond, WA. They came out at last summer's NAMM show. I got to play a yellow one and a black one. Amazing guitars. The problem is that nobody around here sells them. At the winter NAMM last week I played one made of korina. It was amazing. I called up Brian at &lt;a href="http://www.chucklevins.com"&gt;Chuck Levin's&lt;/a&gt; and they're getting a korina one in. Very good price too. I think I need to call Brian back up today.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113828946677779959?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113828946677779959/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113828946677779959&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113828946677779959'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113828946677779959'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/01/floyd-rose-arrow.html' title='Floyd Rose Arrow'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113824859022407572</id><published>2006-01-25T22:52:00.000-05:00</published><updated>2006-01-26T10:24:10.776-05:00</updated><title type='text'>Musical Journey Part 1</title><content type='html'>I've been thinking about this a lot lately.  Probably because I spent so much time by myself on the airplane and in hotels and stuff.&lt;br /&gt;&lt;br /&gt;All of my memories growing up include music in one way or another.  My parents both played piano - mom plays the recorder and used to play the violin and a little guitar.  Both of them really love music.  My mom got me started early with the recorder and singing - neither of which I can do now.  My folks had a good size record collection and music was a very regular thing in our house.  All kinds of music too.  They loved classical and opera the most but they played the Rolling Stones and other rock acts of the times, some dance stuff, and plenty of music that was popular when they were young.  Fortunately for me, they were very open minded.&lt;br /&gt;&lt;br /&gt;Both of my grandfathers were accomplished musicians.  My mom's father was self taught on the piano and guitar.  He was extremely gifted - he had a wonderful ear for music.  My father's father was apparently very skilled as well.  I never met him since he died 5 years before I was born but from what I've heard he had some chops.  &lt;br /&gt;My Aunt Julie plays guitar and this autoharp gizmo.  My cousin Charlie plays guitar and mandolin.&lt;br /&gt;&lt;br /&gt;Basically, I've always been around music, musicians, and have been fortunate to have family that was pretty supportive.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113824859022407572?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113824859022407572/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113824859022407572&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113824859022407572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113824859022407572'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/01/musical-journey-part-1.html' title='Musical Journey Part 1'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113820532899622239</id><published>2006-01-25T09:27:00.000-05:00</published><updated>2006-01-25T11:08:49.416-05:00</updated><title type='text'>NAMM 2006</title><content type='html'>I went to winter NAMM this year which was very cool (unlike Nam which is hot).&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Tuesday 1/17&lt;/strong&gt;&lt;br /&gt;I flew from Raleigh to LAX via Atlanta. The Atlanta airport kinda sucks but they had a Popeye's chicken place so I got to have dirty rice so that was cool.&lt;br /&gt;&lt;br /&gt;When I arrived in LA, I was greeted by fellow &lt;a href="http://www.jcfonline.com/"&gt;JCF&lt;/a&gt; member Ron (RacerX) at baggage claim. Once in my rental car we thought about going to the Randy Rhoads exhibit but Ron didn't know if it was still open and calling the music department at the school just got me a "Randy who?" type of response.&lt;br /&gt;&lt;br /&gt;So we went to Hollywood. To become stars. Heh. Not. We hit Sunset Boulevard to check out the music stores since it didn't make any sense to try and drive to Anaheim at 4pm on a weekday.&lt;br /&gt;&lt;br /&gt;Guitar Center was suprisingly exactly the same as every other freakin' Guitar Center anywhere. The manager there was a bud of mine from back in Seattle - it was cool to run into him.&lt;br /&gt;&lt;br /&gt;Then it was over to the Mesa Boogie store. Yep, they had a lot of Boogies alright.&lt;br /&gt;&lt;br /&gt;Next, it was the Carvin store. I was pretty stoked to go there because I've wanted to check out the Allan Holdsworth model for a long time and they had a couple. That guitar played fantastic. It did have too many damn knobs and switches. I wasn't too thrilled with the tone though - I was playing it through the new Carvin V3 - we'll come back to this issue. All in all, a very cool store and lots of nice gear.&lt;br /&gt;&lt;br /&gt;Then we went to Sam Ash. Man, I hate Sam Ash stores. At first this one looked like all the rest. Racks of crappy Carlo Robelli and Brownsville guitars and those dorky Guitar Research amps. Once we weeded through that sea 'o crap, we found ourselves surrounded by some of the coolest used guitars I'd seen in a store in years (before Ebay). They had unique Les Pauls, JEMs, PRSs, etc. Very cool stuff. It was still a Sam Ash though so it was very overpriced cool stuff.&lt;br /&gt;&lt;br /&gt;Time to eat. There was a Mexican place right next to the Carvin store. Much good food was had.&lt;br /&gt;&lt;br /&gt;We then headed down to Anaheim. I dropped my stuff off at the crappy Econo Lodge and we drove around a bit before going over to Ron's. Once we got to Ron's place he opens up the front door and cranks up his Boss Cube amp and the Marshall. Heh. I then proceeded to play all of his guitars and we jammed for quite a while - like until 1am or so. His neighbors must love him.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Wednesday 1/18&lt;/strong&gt;&lt;br /&gt;I slept in. I wish. I woke up at 6am. That sucked. So I read. I love to read and really took advantage of the trip to read quite a bit.&lt;br /&gt;&lt;br /&gt;I cruised around Anaheim a bit and then up to Brea to check out a cool music store I'd been to a few years before called Rockit music. They had some cool stuff - I was really digging this old Fender Twin Reverb until it farted out on me. Oh well. There was a Guitar Center a mile away so I figured what the heck. Man, that GC sucked. Hard. I did find a cool healthy fresh-Mex place for lunch. Mmmm...&lt;br /&gt;&lt;br /&gt;Then it was off to Downtown Disney. My wife and kids really like the Disney pins so I went to the pin trading store and scored some cool stuff for everyone. I went over to the House of Blues and picked up a couple pins myself - a flying V and a guitar pick. I noticed that poser from American Idol last season Constantine was playing there that night (note to self: don't go to HoB tonight).&lt;br /&gt;&lt;br /&gt;Ron's PC has been out of commission for about a year so he brought it over to my hotel for me to take a look at. Fired it up. Beep. Beep. Beep. Pause. Beep. Beep. Beep. Pause. Beep. Beep. Beep. Pause. You get the idea. Not good. Well I did a quick Google search on my cool Sprint 6700 phone and found out that this beep sequence meant bad memory. That's easy. Ron was watching that show Lost. I don't get that show at all so I mocked it. With the PC diagnosed and Lost behind us, we cruised out for some grub. Of course it was late so nothing was open except this cool Mexican place. Yep, three meals in a row :)&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Thursday 1/19&lt;/strong&gt;&lt;br /&gt;Ron was supposed to come by and pick me up to go to NAMM around 9am. At 9:30 I called and woke his sorry ass up. Needless to say, I drove in myself.&lt;br /&gt;&lt;br /&gt;The show was cool. Todd (Tekky) and his wife Kristy (MrsTekky) met me at the Dean booth while I was snapping pics of all the badass Dimebag tribute guitars. I then went up to the Fender booth. Much cool stuff. The NAMM Jacksons and Charvels were cool of course. I got to meet Matt of Matt's Music (who got me my NAMM pass - thanks Matt). I spoke briefly with Mike Shannon and John from Jackson. Cool folks all around. The Jeff Beck Esquire was killer. Very killer.&lt;br /&gt;&lt;br /&gt;I ran back into Todd, Kristy and Brad Kelly (XXX) a bit later. Brad was apparently visiting folks he knew at the various booths and giving them DVDs of some sort (draw your own conclusions).&lt;br /&gt;&lt;br /&gt;From there it was over to the PRS booth where I saw Johnny Hiland demoing his new signature model PRS. Holy crap! That guy was smokin' in person. I've got his CD which is a bit weak in the songwriting department but that dude can play! I got a signed picture of him too - pretty nice.&lt;br /&gt;&lt;br /&gt;I spent a bunch of time at the Floyd Rose booth. I love their Speedloader guitars. I hung out with JT a good bit who is Floyd's main designer/builder and installed a Speedloader in my JEM a year or two ago. The black korina V's they had were stellar. Light as a feather, played amazing, looked amazing, and sounded fantastic. I think we know where this is headed.&lt;br /&gt;&lt;br /&gt;Then I met up with Chris (Blindmuddy) and we hung out for the rest of the afternoon. We checked out some random stuff all over the show - fun stuff - BC Rich, Warrior, etc. Chris is a badass guitar player. Seriously. He was eyeballing the Carvin stuff pretty seriously and we decided we'd hit the Santa Ana Carvin store Friday morning.&lt;br /&gt;&lt;br /&gt;We met Todd, Kristy, Brad, and Ian (YouThinkYourFish) at the Outback for dinner. Good food, good company, good times. From there, they went to the Hilton and Chris and I tried to get into the House of Blues because Johnny Hiland was playing but it was private party so we hit the Hilton and hung out for a bit.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Friday 1/20&lt;/strong&gt;&lt;br /&gt;Chris and I hit the Carvin store bright and early. He was looking at the 7-strings and I was looking at the Holdsworth again. This time I plugged the Holdsworth into a Legacy amp and it sounded &lt;em&gt;way&lt;/em&gt; better than when I plugged it into the V3. This one had less switches too - just a couple coil taps. It sounded fantastic. Some other dude walks in and starts playing through a V3 stack. That's when I understood what the tone problems were when I was up at the Hollywood store. Put me down as one that is not impressed with the V3 amp. Chris wailed away on a pretty sweet 7-string. Did I mention he could really play? Ultimately, we both walked out empty handed but we both ended up buying Carvin guitars later because of this experience. We grabbed lunch at El Pollo Loco. More good Mexican style food. Good stuff.&lt;br /&gt;&lt;br /&gt;We met a couple JCF folks at noon at the Jackson area for a photo. Rudy (RudyRocker), Ron, Chris, Todd, Kristy, and myself. I took a bunch of pics of the guitars and we hung out with Rudy and his buddy Fred - very cool people. It was a pleasure. They informed us that PRS was having a show that night featuring Al DiMeola and Johnny Hiland.   So Chris and I went off to seek passes.  On the way out we met JR (JRE) and Pebber (never caught his real name), they already had passes apparently.&lt;br /&gt;&lt;br /&gt;So the folks at the PRS booth kind of blew us off.  Well, not kind of.  They did blow us off.  But, we got to see Johnny play a bit and DiMeola was there checking out guitars.&lt;br /&gt;&lt;br /&gt;We cruised around the show a bit.  Naturally, we spent a bunch of time at the Carvin booth.  The 7-string Chris wanted that they had was spoken for by an endorsee.  I played a Holdsworth again.  Surprised?&lt;br /&gt;&lt;br /&gt;Kahler was there - I was glad to see that.  I like Kahlers. &lt;br /&gt;&lt;br /&gt;Roland had a ridiculously large arena to display their wares (booth doesn't describe the setup they had). &lt;br /&gt;&lt;br /&gt;We looked at the Warrior guitars much closer - I was pretty surprised to see some very lame and very noticeable flaws in both their woodwork and finishes.  I know I'd be pissed if I paid the bucks for one of their guitars and got something that looked like what we saw.&lt;br /&gt;&lt;br /&gt;Then we met up with Rudy and Fred to go to the PRS show.  One problem.  We couldn't find Chris's car.  Imagine trying to find "the white SUV" in a Disney parking lot. &lt;br /&gt;&lt;br /&gt;The PRS show was a blast.  We saw Matt but didn't see JRE and Pebber.  We saw Al DiMeola, Johnny Hiland, Pat Travers, &lt;a href="http://www.australianmusician.com.au/DisplayStory.asp?StoryID=33"&gt;Orianthi&lt;/a&gt;, Dee Snider's Van Helsing's Curse, Michael Bolton, Joe Lynn Turner, Paul Reed Smith's band, some dude I'd never heard of and can't remember his name, and the Hollywood All-stars.&lt;br /&gt;&lt;br /&gt;Al and Johnny were just smokin'.  Blazing, tasteful, and entertaining.  The dude whose name I can't remember had lame songs and sang bad but was a tasty guitar player.  Paul Reed Smith has a great band and he makes great guitars but he was not a very inspiring guitarist.  Orianthi was very good - she's 21 and played some blazing pentatonic riffs.  The Dee Snider thing was a joke.  It was soooo bad.  Oh well.  Pat Travers kicked much ass.  Much ass.  Fred went nuts when Travers played.  Then Michael Bolton came out.  Folks, say what you want about him but the man can freakin' sing.  He did a soulful R&amp;B number and just nailed it.  He let the musicians take extended solos - very gracious performer.  Then he strapped on a guitar.  Then Paul Reed Smith came out.  Ruh-roh.  They did one of those popular boring blues classics (the name escapes me).  They drug it out too much.  Michael was out of his league as a guitar player that night but he still kicked Paul Reed Smith's butt.  Joe Lynn Turner came out.  Man.  That was not good.  Finally, the Hollywood All-Stars came out.  Man.  That was not as good as Joe Lynn Turner.  Still, it was a fantastic show -  a good time was had by all.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Saturday 1/21&lt;/strong&gt;&lt;br /&gt;I went home.  Apparently Chris went to the Hollywood Carvin store and bought a 7-string there.  Coolness!&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Monday 1/22&lt;/strong&gt;&lt;br /&gt;I know NAMM is over but I figured I ought close the story and say that I ordered a custom Carvin Holdsworth.  It should be here in 5-6 weeks.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113820532899622239?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113820532899622239/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113820532899622239&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113820532899622239'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113820532899622239'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/01/namm-2006.html' title='NAMM 2006'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113692695509618787</id><published>2006-01-10T16:00:00.000-05:00</published><updated>2006-01-10T16:02:35.100-05:00</updated><title type='text'>Avoid Ebay member clarkbears</title><content type='html'>His name is Matthew Gibney and he is located in Massachusets. Here's the details:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;br /&gt;He bought a guitar from me on Ebay - it ended on December 4th&lt;/li&gt;&lt;li&gt;I received payment via Paypal on the evening of the 5th&lt;/li&gt;&lt;li&gt;It shipped on the 9th via FedEx Ground with signature required&lt;/li&gt;&lt;li&gt;It arrived on the 16th - according to fedex.com it was signed for by MGIBNEY&lt;/li&gt;&lt;li&gt;On the 19th, I sent the buyer a message asking if everything was cool&lt;/li&gt;&lt;li&gt;No response&lt;/li&gt;&lt;li&gt;So yesterday January 9th I get a message from Paypal that this guy has filed a dispute claiming he did not receive the item.&lt;/li&gt;&lt;li&gt;I sent him a message via Ebay asking WTF? No response.&lt;/li&gt;&lt;li&gt;I tried calling him and he did not answer or return the call.&lt;/li&gt;&lt;li&gt;I gave Paypal the tracking # yesterday when I got home.&lt;/li&gt;&lt;li&gt;Today I got a message saying the buyers request had been reversed.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;So it worked out fine for me but still a PITA and pure crap that this guy pulled.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;To top it all off, some dude still hadn't paid me after a month with all sorts of lame excuses and yesterday (of all days) he sends payment to me via Paypal from an account with an unconfirmed shipping address. *Plus* he asks me to ship it somewhere other than that unconfirmed address. I think those of you following along at home can guess what I did with that payment.&lt;/p&gt;&lt;p&gt;Here a fucktard, there a fucktard, everywhere a fucktard, fuck-tard-fuck-tard-fart&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113692695509618787?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113692695509618787/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113692695509618787&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113692695509618787'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113692695509618787'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/01/avoid-ebay-member-clarkbears.html' title='Avoid Ebay member clarkbears'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113692684812213884</id><published>2006-01-10T15:59:00.000-05:00</published><updated>2006-01-10T16:00:48.146-05:00</updated><title type='text'>New Variax firmware!</title><content type='html'>Line 6 just released an update for the Variax that supposedly improves the 12-string and alternate tuning issues.  This could be cool!  I'll have to try this out ASAP!&lt;br /&gt;&lt;br /&gt;&lt;a href="http://line6.com/cgi-bin/ultimatebb.cgi?ubb=get_topic&amp;f=18&amp;amp;t=003426"&gt;http://line6.com/cgi-bin/ultimatebb.cgi?ubb=get_topic&amp;f=18&amp;amp;t=003426&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113692684812213884?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113692684812213884/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113692684812213884&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113692684812213884'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113692684812213884'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2006/01/new-variax-firmware.html' title='New Variax firmware!'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113500419628542289</id><published>2005-12-19T09:51:00.000-05:00</published><updated>2005-12-19T09:56:36.336-05:00</updated><title type='text'>Pat Travers has a new album out!</title><content type='html'>If you ever liked PT or are a fan of heavy blues rock just buy the new album.  That's an order.  It's very cool. &lt;br /&gt;&lt;br /&gt;Pat was always a hero of mine.  I used to see him a lot when we lived in Virginia in this dive in Arlington.  Melissa likes him too - I have to say she has very good taste in music.  The last time I saw Pat was back in Seattle in yet another dive about 2 years ago.   I was sort of expecting to see a washed out old dude just trying to get by.  Well, I was blown away.  Pat was smokin'.  He sang great and played guitar even better.&lt;br /&gt;&lt;br /&gt;The new album has some cool covers, great guitar playing, and a nice song for Elijah.  Like I said, buy it - that's an order.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113500419628542289?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113500419628542289/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113500419628542289&amp;isPopup=true' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113500419628542289'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113500419628542289'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2005/12/pat-travers-has-new-album-out.html' title='Pat Travers has a new album out!'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113500302744404387</id><published>2005-12-19T09:35:00.000-05:00</published><updated>2005-12-19T09:37:07.463-05:00</updated><title type='text'>Hi, I'm Mike Brady</title><content type='html'>This thing is clearly busted. We're not the freakin' Brady's.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;table cellspacing="0" cellpadding="2" width="350" align="center" border="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td align="middle" bg style="color:#f88b8b;"&gt;&lt;span style="FONT-SIZE: 14pt; COLOR: blackfont-family:Georgia, Times New Roman, Times, serif;" &gt;&lt;b&gt;Your Christmas is Most Like: A Very Brady Christmas&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td bgcolor="#73eaa0"&gt;&lt;center&gt;&lt;img height="100" src="http://images.blogthings.com/whatmovieisyourchristmasmostlikequiz/a-very-brady-christmas.jpg" width="100" /&gt;&lt;/center&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;For you, it's all about sharing times with family.&lt;br /&gt;Even if you all get a bit cheesy at times.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href="http://www.blogthings.com/whatmovieisyourchristmasmostlikequiz/"&gt;What Movie Is Your Christmas Most Like?&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113500302744404387?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113500302744404387/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113500302744404387&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113500302744404387'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113500302744404387'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2005/12/hi-im-mike-brady.html' title='Hi, I&apos;m Mike Brady'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113482861764756219</id><published>2005-12-17T09:07:00.000-05:00</published><updated>2005-12-17T09:10:17.660-05:00</updated><title type='text'>Variax 600 first impressions</title><content type='html'>The UPS driver came yesterday and dropped off a Line 6 Variax 600. I got the sonic blue one. As in &lt;span style="color:#85b0e4;"&gt;TARHEEL blue&lt;!--color--&gt;&lt;/span&gt; and as opposed to &lt;span style="color:#85b0e4;"&gt;baby blue&lt;!--color--&gt;&lt;/span&gt; which may seem the same to you put it's clearly much different. I plugged it into my THD Univalve into a Boogie Thiele ported 1x12 with Vintage 30's and fed it through a Rocktron Chameleon for a little while too.&lt;br /&gt;&lt;br /&gt;I've owned 3 other Variaxes (2 500's and one 700 with trem) so I pretty much knew what to expect. The 600 has the 300 electronics revision. The 600 has the same headstock and body style as the 300. The differences between the 600 and the 300 is the 600 has a whidlee bar and the neck is much better. That's not to say the neck on the 600 is great, more that the neck on the 300 is total shite.&lt;br /&gt;&lt;br /&gt;I ran through the various guitar models and it sounded as good and bad as the ones I had before. The Strat, Tele, Les Paul, Firebird, Gretsch, 6-string Rick, Sitar, jazz box, semi-holow, and 6-string acoustics all sounded pretty darn good. The 12-strings suck still. They are really bad. I tried dialing in compression and chorus and delay and reverb to bury them and somehow the suck kept ringing through - impressive. This is a sign of the larger problem with the Variax. More on that in a minute.&lt;br /&gt;&lt;br /&gt;I had a lot of fun with this. It really is quite convincing. A Tele really sounds like a Tele. The quack sounds on a Strat sound right. The Rick's jangle. The Les Paul neck pickup gets all fat and warm like you expect. The hollow body models inspire you to play all three "jazz" chords you know :)   The semi-hollows emit kick ass blues tones. The Gretsch handled Stray Cat Strut no problem. The acoustics were sort of mediocre running through my guitar amp but I know from past experience that running them through a rig more suited to an acoustic guitar that they sound like pretty good piezo equipped guitars - the Variax comes with a footswitch just for this purpose.&lt;br /&gt;&lt;br /&gt;Is the Variax as good as your best Strat, Les Paul, whatever? Nah. But it's very good. It really is.&lt;br /&gt;&lt;br /&gt;Then it was time to fire up the Variax Workbench. This is a piece of software that allows you to reconfigure the guitar to your heart's content. You connect the Variax to a PC via either the Workbench USB box, a PODxt Live, or a Vetta with a VDI board. You can reprogram any "patch" on the Variax to be anything you want it to be.&lt;br /&gt;&lt;br /&gt;You can create all sorts of monstrosities with the Workbench or you can just tweak existing guitar models for subtle changes.&lt;br /&gt;&lt;br /&gt;For instance, the first thing I created was a flametop Les Paul with two Tele bridge pickups wired in series side by side.&lt;br /&gt;&lt;br /&gt;You pick a body - Les Paul, Strat, Tele, etc.&lt;br /&gt;&lt;br /&gt;You pick pickups - Les Paul PAF, Danelectro lipstick, Firebird mini-hum, etc.&lt;br /&gt;&lt;br /&gt;You tweak the controls - you pick the pot values - 500k, 250k, etc. and the capacitor values .47pf, etc.&lt;br /&gt;&lt;br /&gt;Note that the options are limited for acoustic based models.&lt;br /&gt;&lt;br /&gt;And you can tweak the tuning. This is where the Variax could shine but ends up disappointing.&lt;br /&gt;&lt;br /&gt;Remember my Les Tele monster that I created? I made it a baritone - I dropped the tuning down to B. It sounded pretty weak IMO. There was all sorts of what I call "little digital mystery sounds" happening. It's hard to describe but it's not a good thing. I did find that with some Chameleon mixed in things got better - a little chorus, distortion, reverb, and/or delay definitely masks the annoyances here.&lt;br /&gt;&lt;br /&gt;Want open E tuning? Want drop D? No problem.&lt;br /&gt;&lt;br /&gt;You could do the 12-string thing only with limited body types - so I couldn't turn my Les Tele into a 12-string monstrosity. But I could make a Rick Tele 12-string. There really was no salvaging the 12-string tones. Maybe with time and tweaking. I also know they are working on an update so hopefully the tuning stuff will improve.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113482861764756219?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113482861764756219/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113482861764756219&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113482861764756219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113482861764756219'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2005/12/variax-600-first-impressions.html' title='Variax 600 first impressions'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113474498931680731</id><published>2005-12-16T09:55:00.000-05:00</published><updated>2005-12-16T09:56:29.326-05:00</updated><title type='text'>Things to do at Wal*Mart while your spouse/partner is taking their sweet time</title><content type='html'>'Tis the season, I got this e-mail from a friend.  Some of these are pretty darn funny:&lt;br /&gt;&lt;br /&gt;1. Get 24 boxes of condoms and randomly put them in peoples' carts when they aren't looking.&lt;br /&gt;&lt;br /&gt;2. Set all the alarm clocks in Housewares to go off at 5-minute intervals.&lt;br /&gt;&lt;br /&gt;3. Make a trail of tomato juice on the floor leading to the rest rooms.&lt;br /&gt;&lt;br /&gt;4. Walk up to an employee and tell him/her in! an official tone, 'Code 3' in housewares and see what happens.&lt;br /&gt;&lt;br /&gt;5. Go the Service Desk and ask to put a bag of M&amp;M's on lay away.&lt;br /&gt;&lt;br /&gt;6. Move a 'CAUTION - WET FLOOR' sign to a carpeted area.&lt;br /&gt;&lt;br /&gt;7. Set up a tent in the camping department and tell other shoppers you'll invite them in if they'll bring in pillows from the bedding department.&lt;br /&gt;&lt;br /&gt;8. When a clerk asks if they can help you, begin to cry and ask 'Why can't you people just leave me alone?'&lt;br /&gt;&lt;br /&gt;9. Look right into the security camera; use it as a mirror, &amp; and pick your nose.&lt;br /&gt;&lt;br /&gt;10. While handling guns in the hunting department, ask the clerk if he knows where the anti- depressants are.&lt;br /&gt;&lt;br /&gt;11. Dart around the store suspiciously loudly humming the Mission Impossible theme.&lt;br /&gt;&lt;br /&gt;12. In the auto department, practice your Madonna look using different size funnels.&lt;br /&gt;&lt;br /&gt;13. Hide in a clothing rack; when people browse through, say PICK ME!&lt;br /&gt;&lt;br /&gt;14. When an announcement comes over the loudspeaker, assume the fetal position and scream "NO! NO! It's those voices again!!!! And; last, but not least!)&lt;br /&gt;&lt;br /&gt;15. Go into a fitting room and shut the do or and wait a while; and then yell, very loudly, "There is no toilet paper in here!"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113474498931680731?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113474498931680731/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113474498931680731&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474498931680731'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474498931680731'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2005/12/things-to-do-at-walmart-while-your.html' title='Things to do at Wal*Mart while your spouse/partner is taking their sweet time'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113457662217683422</id><published>2005-12-14T11:09:00.000-05:00</published><updated>2005-12-14T11:10:22.176-05:00</updated><title type='text'>Pardon the dust...</title><content type='html'>I'm slowly moving my old blog posts over here.  That's why stuff from 2003 is showing up.  I just want to keep it all in one place.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113457662217683422?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113457662217683422/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113457662217683422&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113457662217683422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113457662217683422'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2005/12/pardon-dust.html' title='Pardon the dust...'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113457540758466166</id><published>2005-12-14T10:49:00.000-05:00</published><updated>2005-12-14T10:50:07.586-05:00</updated><title type='text'>Eighth grade math - piece of cake</title><content type='html'>Bring it on folks - that was too easy.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;table cellspacing="0" cellpadding="2" width="350" align="center" border="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td align="middle" bg style="color:#cddeff;"&gt;&lt;span style="FONT-SIZE: 14pt; COLOR: blackfont-family:Georgia, Times New Roman, Times, serif;" &gt;&lt;b&gt;You Passed 8th Grade Math&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td bgcolor="#ebf2ff"&gt;&lt;center&gt;&lt;img height="100" src="http://images.blogthings.com/couldyoupasseighthgrademathquiz/passed.jpg" width="100" /&gt;&lt;/center&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;Congratulations, you got 10/10 correct!&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href="http://www.blogthings.com/couldyoupasseighthgrademathquiz/"&gt;Could You Pass 8th Grade Math?&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113457540758466166?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113457540758466166/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113457540758466166&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113457540758466166'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113457540758466166'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2005/12/eighth-grade-math-piece-of-cake.html' title='Eighth grade math - piece of cake'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113457486255002987</id><published>2005-12-14T10:34:00.000-05:00</published><updated>2005-12-14T10:43:02.953-05:00</updated><title type='text'>Citizens</title><content type='html'>This was harder than I thought.  Of course none of this matters much in my mind.  It's good to know of course but I think better questions would be like:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Have you ever thought of bombing a restaurant?&lt;br /&gt;&lt;li&gt;Has anyone in your immediate or extendend family thought of bombing a restaurant?&lt;br /&gt;&lt;li&gt;What's your best time assembling a bomb?&lt;br /&gt;&lt;li&gt;What do you typically do with the bombs you make?&lt;br /&gt;&lt;li&gt;Can you fucking speaky speaky English?&lt;br /&gt;&lt;li&gt;How many terrorist attacks have you planned?&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;You get the idea.  Well here's my score:&lt;br /&gt;&lt;br /&gt;&lt;table width=350 align=center border=0 cellspacing=0 cellpadding=2&gt;&lt;tr&gt;&lt;td bgcolor="#F88B8B" align=center&gt;&lt;font face="Georgia, Times New Roman, Times, serif" style='color:black; font-size: 14pt;'&gt;&lt;b&gt;You Passed the US Citizenship Test&lt;/b&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td bgcolor="#A7CEFF"&gt;&lt;center&gt;&lt;img src="http://images.blogthings.com/couldyoupasstheuscitizenshiptestquiz/approved.jpg" height="100" width="100"&gt;&lt;/center&gt;&lt;font color="#000000"&gt;&lt;br /&gt;Congratulations - you got 8 out of 10 correct!&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div align="center"&gt;&lt;a href="http://www.blogthings.com/couldyoupasstheuscitizenshiptestquiz/"&gt;Could You Pass the US Citizenship Test?&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113457486255002987?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113457486255002987/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113457486255002987&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113457486255002987'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113457486255002987'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2005/12/citizens.html' title='Citizens'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113457441469194570</id><published>2005-12-14T10:32:00.000-05:00</published><updated>2005-12-14T10:33:34.700-05:00</updated><title type='text'>My French name is...</title><content type='html'>This is pretty stupid.  But I did it and here are the stupid results.&lt;br /&gt;&lt;br /&gt;&lt;table width=350 align=center border=0 cellspacing=0 cellpadding=2&gt;&lt;tr&gt;&lt;td bgcolor="#FFF2BF" align=center&gt;&lt;font face="Georgia, Times New Roman, Times, serif" style='color:black; font-size: 14pt;'&gt;&lt;b&gt;Your French Name is:&lt;/b&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td bgcolor="#FFFAE6"&gt;&lt;center&gt;&lt;img src="http://images.blogthings.com/frenchnamegenerator/france.jpg" height="100" width="100"&gt;&lt;/center&gt;&lt;font color="#000000"&gt;&lt;br /&gt;&lt;center&gt;&lt;strong&gt;Corbin Bertin&lt;/strong&gt;&lt;/center&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div align="center"&gt;&lt;a href="http://www.blogthings.com/frenchnamegenerator/"&gt;What's Your French Name?&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113457441469194570?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113457441469194570/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113457441469194570&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113457441469194570'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113457441469194570'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2005/12/my-french-name-is.html' title='My French name is...'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113453080953814542</id><published>2005-12-13T22:24:00.000-05:00</published><updated>2005-12-13T22:26:49.546-05:00</updated><title type='text'>How hard is it to pack a guitar?</title><content type='html'>&lt;p&gt;Is this some sort of fucking mystery?&lt;/p&gt;&lt;p&gt;Why is it when I buy a guitar from a store making a profit that got it from some company making a profit that neither can pack the guitar properly yet when I buy a guitar from some random dude that's taking a bath on a guitar (or maybe breaking even) he packs it like it matters to him that I receive the guitar in one piece?&lt;/p&gt;&lt;p&gt;This message goes out to Jackson, Ibanez, Fender, etc. and just about every dealer I've dealt with.&lt;/p&gt;&lt;p&gt;I've bought a number of brand spankin' new guitars in the last couple years from a variety of brands and a variety of dealers.&lt;/p&gt;&lt;p&gt;In fact, I got a brand new acoustic guitar in the mail yesterday.  It's a damn good thing I ordered the case to go with it because there is no doubt in my mind I would have received a box of green toothpicks if I didn't.  And thankfully the guitar was snug in the case.  Because the case was just rattling around loose in the box.  There was a single strip of that balloon bag stuff in there.  It was a joke.  The box was busted open from obviously having the case thrash it open.  My wife said the UPS driver was shitting a brick apparently because it looked so bad.  She called me immediately said she thought I was gonna be disappointed - she was sure the thing was going to be hosed.&lt;/p&gt;&lt;p&gt;It looked to me that this is how it came from the factory.  It got lucky on the first part of it's journey so the dealer decided to roll the dice and ship it that way to me.  Gee thanks. &lt;br /&gt;And it's not just that guitar yesterday.  Every single brand new Jackson, Charvel, and Fender guitar I've bought online &lt;span style="font-family:georgia;"&gt;was&lt;/span&gt; packed with the roll the dice strategy.  And these weren't $79 guitars (not that that would be an excuse).&lt;/p&gt;&lt;p&gt;Sheesh, I'm willing to spring for the extra 5 or 10 bucks for some freakin' packing peanuts for a purchase like this.&lt;/p&gt;&lt;p&gt;Now contrast that with the last couple guitars I got from online forum members and/or Ebay.  The guitars are padded inside the case, the neck and headstock are protected, and there is some stuffing in the box so the case doesn't freakin' rattle around.&lt;/p&gt;&lt;p&gt;Two companies do get an honorable mention though - Line 6 and Taylor.  They actually design their boxes so that the guitar doesn't freakin' move around.  And the Taylors come with excellent cases on top of it.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113453080953814542?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113453080953814542/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113453080953814542&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113453080953814542'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113453080953814542'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2005/12/how-hard-is-it-to-pack-guitar.html' title='How hard is it to pack a guitar?'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113448862137434424</id><published>2005-12-13T10:40:00.000-05:00</published><updated>2005-12-13T11:18:16.946-05:00</updated><title type='text'>Stupid Browser Tricks Part One</title><content type='html'>&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;At one point folks got carried away with drag and drop on the IE team. For example:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;The system menu icon (the little icon in the top left in the window title) is a drag source in IE and Explorer windows. So you can use it to drag a shortcut to the current page/folder/document to anywhere you want. &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;The icon in the address bar is also a drag source. Again, drag this anywhere you want to create a shortcut. &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;The Home button is a drop target. Drop a shortcut here and you've got a new home page. &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;The Favorites button is a drop target. Drop a shortcut here and you've got a new favorite added to the root of the favorites folder. &lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-family:trebuchet ms;"&gt;The free edges of the desktop are special drop targets. Try dragging a folder to the right-most edge of your desktop and watch a folder toolband appear docked to the screen. The desktop needs to be exposed for this to work.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;"&gt;So if you want to amaze your friends, drag the system menu icon from "My Computer" and slam it up against the top edge of your screen and watch them gaze in awe as a stylish toolbar appears with Your Computer.&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113448862137434424?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113448862137434424/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113448862137434424&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113448862137434424'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113448862137434424'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2005/12/stupid-browser-tricks-part-one.html' title='Stupid Browser Tricks Part One'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113475145430111089</id><published>2005-09-18T11:43:00.000-04:00</published><updated>2005-12-16T11:44:14.303-05:00</updated><title type='text'>The Second Stage Turbine Blade - Coheed &amp; Cambria</title><content type='html'>This is a very fun disc.  I've been reading about these guys from time to time in guitar magazines.  So I picked this one up.  I totally get the comparison to Geddy Lee on the vocals.  I think this guy has more of an edge to his voice but the Geddy-vibe is definitely there.  There isn't a whole lot of blazing lead guitar on this disc but the guitar work is solid.  The tunes are good modern rockers.  The best way to describe the sound is: clean.  I don't mean the guitar tones are clean, but the rather the production.  Not a lot of effects.  Every part is very clear and natural sounding.  It doesn't sound like someone spent months shaping the sound in ProTools.  IOW, it sounds like a BAND.&lt;br /&gt;&lt;br /&gt;The song writing is very good.  Straight ahead with a few interesting twists now and again to keep it interesting.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;The Hippie rating is 8 out of 10.&lt;/u&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113475145430111089?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475145430111089'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475145430111089'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2005/09/second-stage-turbine-blade-coheed.html' title='The Second Stage Turbine Blade - Coheed &amp; Cambria'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113475152191163439</id><published>2005-09-17T11:44:00.000-04:00</published><updated>2005-12-16T11:45:21.913-05:00</updated><title type='text'>Howl - Black Rebel Motorcycle Club</title><content type='html'>Ok, I really dug the B.R.M.C release.  Howl, on the other hand, pretty much blows. The songs are boring.  No energy. I'm just glad I got free shipping.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;This gets a gift of 3 out of 10 stars.&lt;/u&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113475152191163439?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475152191163439'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475152191163439'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2005/09/howl-black-rebel-motorcycle-club.html' title='Howl - Black Rebel Motorcycle Club'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113475138195045166</id><published>2005-09-17T11:42:00.000-04:00</published><updated>2005-12-16T11:43:01.960-05:00</updated><title type='text'>A Bigger Bang - The Rolling Stones</title><content type='html'>This is definitely their best release in a long time.  Probably their best in 20 years.  They touch on a bit of a lot of styles that they've dabbled in throughout their career.  There's some straight up riff rock, country blues, and even a Motown inspired foot tapper.  Good stuff.&lt;br /&gt;&lt;br /&gt;&lt;u&gt;This is a solid 8 out of 10 stars.&lt;/u&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113475138195045166?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475138195045166'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475138195045166'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2005/09/bigger-bang-rolling-stones.html' title='A Bigger Bang - The Rolling Stones'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113474758515599673</id><published>2005-09-14T10:34:00.000-04:00</published><updated>2005-12-16T10:39:45.290-05:00</updated><title type='text'>Two guitars came today</title><content type='html'>So the UPS guy dropped off two guitars today.&lt;br /&gt;&lt;br /&gt;The first is my old &lt;a href="http://www.hackolutions.com/gear/currentgear/jacksonkv2t/jacksonkv2t.htm"&gt;Jackson KV2T&lt;/a&gt;.  I foolishly traded it away.  That dude sold it or traded it.  The person that got it was kind enough to contact me about getting it back.  We worked out a deal for my &lt;a href="http://www.hackolutions.com/gear/oldgear/ibanezuniverse/ibanezuniverse.htm"&gt;Ibanez Universe&lt;/a&gt; and some cash.  I am thrilled to get this guitar back.  It looks great, sounds great, and plays great.  Kick ass!  My wife politely reminded me that she told me not to let it go - once again she was right.&lt;br /&gt;&lt;br /&gt;The other is an &lt;a href="http://www.hackolutions.com/gear/currentgear/epiphonezakk/epiphonezakk.htm"&gt;Epiphone Zakk Wylde Bullseye&lt;/a&gt; model - the white/black one (as opposed to the camo version).  This guitar looks fantastic.  It sounds ok but I already have plans to replace the EMG HZ pickups - I'm thinking it will be a Gibson Iommi signature in the bridge and a Dimarzio Al Dimeola signature in the neck.  The guitar has really nasty strings , needs a fret dress, and generally needs a setup.  The neck feels good and it's light which is nice for a Les Paul.  This could turn out to being a very cool guitar.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113474758515599673?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113474758515599673/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113474758515599673&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474758515599673'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474758515599673'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2005/09/two-guitars-came-today.html' title='Two guitars came today'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113475159584526228</id><published>2004-02-25T11:45:00.000-05:00</published><updated>2005-12-16T11:46:35.846-05:00</updated><title type='text'>And the New Middle Ages begins!</title><content type='html'>&lt;p&gt;Well the dipshit is following through on his state of the Union speech. I can't believe a President of the United States of America in the 21st century gives a flying fuck about who marries who. Asshole! Asshole! Asshole!&lt;br /&gt;&lt;br /&gt;Seriously, doesn't he have anything else to worry about? Aren't we kind of involved in a few wars right now? Isn't the economy in the toilet? All he's got to worry about is gay people? Aren't children starving somewhere?&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113475159584526228?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475159584526228'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475159584526228'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2004/02/and-new-middle-ages-begins.html' title='And the New Middle Ages begins!'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113475183946675226</id><published>2004-02-20T11:46:00.000-05:00</published><updated>2005-12-16T11:52:11.730-05:00</updated><title type='text'>It's been a while...</title><content type='html'>..wait a minute, that's a Staind song title.&lt;br /&gt;&lt;br /&gt;Anyhoo...&lt;br /&gt;&lt;br /&gt;Well the Antigua Telecaster didn't work out. I called the store up to buy it and missed it by hours. Can you say AAAAAAAAAAAAAAAAAHHHHHHHHHHHH!?!?!?!?&lt;br /&gt;&lt;br /&gt;Well, to make up for it I bought 3 other guitars - that'll show 'em. To be fair, I sold 5 others and a bunch of other stuff. Believe it or not I actually spent less than I sold (I think - I don't actually add these things up).&lt;br /&gt;&lt;br /&gt;I ended up with a Brian Setzer Hot Rod by Gretsch:&lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.hackolutions.com/gear/currentgear/gretschsetzer/setzer.jpg" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;...and a Fender double bound Telecaster from their Custom Shop:&lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.hackolutions.com/gear/oldgear/cstele/cstele1.jpg" /&gt;&lt;br /&gt;&lt;br /&gt;...and a Fender Closet Classic 60's Stratocaster from their Custom Shop. &lt;p&gt;&lt;/p&gt;&lt;img src="http://www.hackolutions.com/gear/oldgear/csstrat/csstrat1.jpg" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113475183946675226?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475183946675226'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475183946675226'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2004/02/its-been-while.html' title='It&apos;s been a while...'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113475190086719678</id><published>2004-01-25T11:51:00.000-05:00</published><updated>2005-12-16T11:52:48.076-05:00</updated><title type='text'>Oh my!</title><content type='html'>&lt;p&gt;The dealer with the Antigua finished Telecaster sent me some better pictures. This thing is awesome. I'm feeling the urge to splurge:&lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.hackolutions.com/antigua/EPSN0010.jpg" /&gt; &lt;p&gt;&lt;img src="http://www.hackolutions.com/antigua/EPSN0002.jpg" /&gt; &lt;p&gt;&lt;img src="http://www.hackolutions.com/antigua/EPSN0003.jpg" /&gt; &lt;p&gt;&lt;img src="http://www.hackolutions.com/antigua/EPSN0004.jpg" /&gt; &lt;p&gt;&lt;img src="http://www.hackolutions.com/antigua/EPSN0005.jpg" /&gt; &lt;p&gt;&lt;img src="http://www.hackolutions.com/antigua/EPSN0006.jpg" /&gt; &lt;p&gt;&lt;img src="http://www.hackolutions.com/antigua/EPSN0007.jpg" /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113475190086719678?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475190086719678'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475190086719678'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2004/01/oh-my.html' title='Oh my!'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113475205571069332</id><published>2004-01-22T11:53:00.000-05:00</published><updated>2005-12-16T11:54:15.710-05:00</updated><title type='text'>Wow! I finally found one</title><content type='html'>&lt;p&gt;My first "real" electric guitar was a used 1978 Fender Telecaster with an Antigua finish. I remeber my dad paid $175 for it - seemed like a lot of money to me back in 1979 or so. It probably was. Any how, it's worth 10 times that now. I was an idiot and traded it away and have prety much regretted it for 20 years. I've never run across one again in that finish. A few have come by on the Internet but they were beat to hell and the finishes had turned a nasty color over time.&lt;br /&gt;&lt;br /&gt;In 2003, Fender reissued the Antigua Telecaster and Stratocaster. I bought them both. They're decent guitars but not the same as the originals. The paint jobs are all wrong. I already sold the Stratocaster (thank goodness for Ebay).&lt;br /&gt;&lt;br /&gt;Then the other day I found a real one:&lt;br /&gt;&lt;br /&gt;&lt;a language="javascript" onmousemove="window.status='http://www.gbase.com/gearlist/guitar_picture.asp?guitar=526125'" onmouseout="window.status=''" href="http://www.gbase.com/gearlist/guitar_picture.asp?guitar=526125"&gt;[link]&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The dealer swears the thing is practically mint. The color is right and not the nasty avocado green most of them turn into. I've asked about the dealer and he's apparently a straight shooter - pricey, but that's to be expected for this guitar.&lt;br /&gt;&lt;br /&gt;I want this guitar!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113475205571069332?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475205571069332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475205571069332'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2004/01/wow-i-finally-found-one.html' title='Wow! I finally found one'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113475233572154590</id><published>2004-01-21T11:57:00.000-05:00</published><updated>2005-12-16T11:58:55.723-05:00</updated><title type='text'>Welcome to Bush's new Middle Ages</title><content type='html'>&lt;p&gt;What a fucking dipshit. I started to catch the State of the Union address and it was so depressing I had to walk away.&lt;br /&gt;&lt;br /&gt;This asshole drags us into a war that neither he or anyone in the foreseable future will be able to get us out of. I love how he and his lemmings have declared a "do over" on our reasoning for starting the war. Along the way he manages to drag down the economy. Fuck, I could have done that.&lt;br /&gt;&lt;br /&gt;I love it when he says he's created new jobs - like that's hard, you could employ thousands of people just to deal with unemployment.&lt;br /&gt;&lt;br /&gt;Now tonight he brings up his medical plan squarely aimed at giving big businesses a break so they won't be too interested in providing quality benefits.&lt;br /&gt;&lt;br /&gt;Once again we have a backwards-country-fuck-thinking leader that wants to impose his Bible thumping sense of medieval morality about what marriage and family is all about. ASSHOLE.&lt;br /&gt;&lt;br /&gt;He wants to teach abstinence to our youth? More of his jackass morality. People have real problems making ends meet and schools have no money to pay teachers and this idiot wants to waste money trying to convince teenagers to wait. What a dork.&lt;br /&gt;&lt;br /&gt;You know...&lt;br /&gt;&lt;br /&gt;...everytime I see him it appears that his eyes are closer together. I wonder if they actually touched at one time and he had plastic surgery to spread them apart so he wouldn't look like such an inbred little shit. So what appears to be happening is that his inbred nature is overpowering the plastic surgery. I bet he goes in for another operation soon and they'll be space better soon. He's basically like Cher in &lt;i&gt;The Deliverance&lt;/i&gt;.&lt;br /&gt;&lt;br /&gt;His talk on drugs was good. I have to admit that. Of course he's got a lot of experience in that department so he's got a lot of credibility.&lt;br /&gt;&lt;br /&gt;In terms of defeating terrorism - what has he done? Seriously, Bin Laden is still out there. Americans are afraid to fly, we're giving up civil liberties left and right, and the rest of the world hates us like never before. Oh yeah, that plan is working.&lt;br /&gt;&lt;br /&gt;this blog was a stream of conciousness so it probably doesn't make a whole lot of sense - it's rather difficult to articulate ones feelings when one is utterly fucking disgusted with ones wretched little troll of a leader.&lt;br /&gt;&lt;br /&gt;Not that I have an opinion.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113475233572154590?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475233572154590'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475233572154590'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2004/01/welcome-to-bushs-new-middle-ages.html' title='Welcome to Bush&apos;s new Middle Ages'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113475220411818357</id><published>2004-01-21T11:56:00.000-05:00</published><updated>2005-12-16T11:56:44.120-05:00</updated><title type='text'>On a lighter note</title><content type='html'>I picked up The Rolling Stones &lt;i&gt;Stripped&lt;/i&gt; CD the other day and it is really quite good.  It's a live CD with a lot of acoustic numbers from their '95 Voodoo Lounge Tour.  &lt;i&gt;Love in Vain&lt;/i&gt; is beautiful.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113475220411818357?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475220411818357'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475220411818357'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2004/01/on-lighter-note.html' title='On a lighter note'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113475216434997419</id><published>2004-01-21T11:55:00.000-05:00</published><updated>2005-12-16T11:56:04.350-05:00</updated><title type='text'>So Dorothy says to George Bush...</title><content type='html'>"...what would you do with a brain if you had one."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113475216434997419?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475216434997419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475216434997419'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2004/01/so-dorothy-says-to-george-bush.html' title='So Dorothy says to George Bush...'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113475212626244505</id><published>2004-01-21T11:54:00.000-05:00</published><updated>2005-12-16T11:55:26.263-05:00</updated><title type='text'>Don't watch About Schmidt</title><content type='html'>What a crummy movie.  I'm an idiot for watching the whole thing.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113475212626244505?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475212626244505'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475212626244505'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2004/01/dont-watch-about-schmidt.html' title='Don&apos;t watch About Schmidt'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113475238164281003</id><published>2004-01-14T11:59:00.000-05:00</published><updated>2005-12-16T11:59:41.643-05:00</updated><title type='text'>When are MSDN and MSN search not going to suck?</title><content type='html'>&lt;p&gt;Crap. What a pain in the ass. The most effective way to search MSDN is to go to &lt;a href="http://www.google.com" target="_blank"&gt;Google&lt;/a&gt; and search. Why can't MSDN search its own content and present it more effectively than Google? I know they have more domain knowledge about the content and at least some additional metadata that Google isn't privy to. What gives?&lt;br /&gt;&lt;br /&gt;Then there's MSN search. It's come a long way but it still doesn't touch Google. MSN search result seem to be far more motivated by revenue than quality of results.&lt;br /&gt;&lt;br /&gt;Sigh.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113475238164281003?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475238164281003'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475238164281003'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2004/01/when-are-msdn-and-msn-search-not-going.html' title='When are MSDN and MSN search not going to suck?'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113475246263848957</id><published>2004-01-06T11:59:00.000-05:00</published><updated>2005-12-16T12:01:02.640-05:00</updated><title type='text'>Snow days RAWK!</title><content type='html'>Western Washington is comically unprepared for snow. The news reports last night said we'd get 4-12" depending on where you live. We live just oustide of Seattle in a suburb called Issaquah and got about 4-6". There was no point in driving to Redmond for work because nobody was there plus they don't clear the streets so it's driving on ice around here. So I slacked off at home. Connecting to e-mail remotely was painfully slow with 20,000 other people doing it so I said the hell with it and just enjoyed the day at home with my boys.&lt;br /&gt;&lt;br /&gt;We took my eldest sons' bike ramp that Santa brought him and buried it to make a huge snow ramp. That and some innertubes from Schuck's auto supply were the hit of the day.&lt;br /&gt;&lt;br /&gt;As the evening rolled around, some of the neighbor mom's and dad's gathered for some spiced wine while the kids continued on their sleds and innertubes. Naturally, I went and grabbed the brand spankin' new bottle of Jaegermeister from the fridge and proceeded to get blitzed with the neighbors around an impromptu fire. Heck, I can barely type right now.&lt;br /&gt;&lt;br /&gt;Life is good...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113475246263848957?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475246263848957'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475246263848957'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2004/01/snow-days-rawk.html' title='Snow days RAWK!'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113474782278679080</id><published>2003-12-28T10:43:00.000-05:00</published><updated>2005-12-16T10:43:42.786-05:00</updated><title type='text'>sorting through my trains...</title><content type='html'>&lt;p&gt;So tonight I was sorting through my model trains. Man, I've got a lot. Naturally this sparked a renewed interest. I am sorely out of date with the Marklin museum series - I haven't picked up any since 1998. It's gonna cost some serious $$$ to catch up. Hopefully Ebay will help me out here.&lt;br /&gt;&lt;br /&gt;While surfing I found the coolest thing. Marklin now makes a Harry Potter Hogwart's Express train. It looks really neat.&lt;br /&gt;&lt;br /&gt;I have to catch up...&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113474782278679080?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474782278679080'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474782278679080'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2003/12/sorting-through-my-trains.html' title='sorting through my trains...'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113474769530614893</id><published>2003-12-28T10:39:00.000-05:00</published><updated>2005-12-16T10:41:53.983-05:00</updated><title type='text'>The iTrip is a piece of crap</title><content type='html'>&lt;p&gt;Now Melissa and I have iPods. It'd be great to be able to have 40 gigs of tunes available in the car wouldn't it? So I looked around at the solutions and the big thing everyone kept mentioning as being a kick ass solution is this &lt;a href="http://www.griffintechnology.com/products/itrip/" target="_blank"&gt;iTrip&lt;/a&gt; thing. The Apple store had them so I picked a couple up. It looks really cool. You just pop it on top of the iPod and it looks like it belongs. It emits an FM signal so you just tune your car stereo to the same station you set for the iTrip. Simple enough, eh?&lt;br /&gt;&lt;br /&gt;I'm not sure how to proceed in articulating the stupidity of this unit from here. Hmm...&lt;br /&gt;&lt;br /&gt;For starters, I couldn't try it out right when I got back to the car. You have to run the CD-ROM and install something or other so you can select the FM frequency. This is somewhat bewildering to me. This thing cost $35 and can't dial a radio frequency on it's own yet I can go get an AM/FM wrist watch with a calculator for 7 bucks. So much for instant gratification, I guess I'll have to wait until I get home to try it out. Brilliant.&lt;br /&gt;&lt;br /&gt;So I get home and pop in the CD. It comes up with a %$##$% dialog box that says something lame like "Fatal error, you must have MusicMatch installed." What the heck is MusicMatch? My iPod came with iTunes. Actually, I know what MusicMatch is but I don't have it and it didn't get installed with my iPod. None of the new iPods install MusicMatch and note that the &lt;a href="http://www.griffintechnology.com/products/itrip/" target="_blank"&gt;iTrip&lt;/a&gt; web site clearly states in bold print that "The New iTrip for the new iPods is NOW SHIPPING." Clearly they didn't test their solution with a new iPod. So I click on the Q&amp;amp;A &lt;a href="http://www.griffintechnology.com/products/itrip/faq.html" target="_blank"&gt;link&lt;/a&gt; thinking they'd have my answer there. Nope, not there. Next, I try the &lt;a href="http://www.griffintechnology.com/support/" target="_blank"&gt;support&lt;/a&gt; link and find a link to the updated iTrip manual. Surely this will tell me what to do. Nope. The setup instructions still tell me to pop in my CD and everything will work. A couple more clicks got me to this support &lt;a href="http://www.griffintechnology.com/support/itrip/ITRIP-014.html" target="_blank"&gt;article&lt;/a&gt;. Holy crap! These folks are smoking something good. There is a 13-step manual installation process for you to copy and paste files from the CD and then manually create a playlist. This is total amateur night.&lt;br /&gt;&lt;br /&gt;Now I'm beginning to understand how this thing is going to work. You copy a separate MP3 file over for every radio frequency from 87.7 to 107.9 and the way you "tune" the iTrip is by playing the MP3 file corresponding to the frequency you want to try. Of course, it's not enough to just play the MP3 file, &lt;i&gt;you must also stop playback of the file midway once the iTrip LED starts blinking&lt;/i&gt;. If you let the tuning song play all the way through it doesn't work (I found this out the hard way). This is just dorky.&lt;br /&gt;&lt;br /&gt;At this point I'm now in the garage in the mini-van trying this out. I can't believe my ears. This thing sounds like crap. It is truly horrible. There is no stereo separation. It is noisy. There are no dynamics to the music at all. I tried multiple channels and two cars. No apparent help. Basically, this device sucks all that is good from the music and disposes of it. Then it spews a hobby-grade AM transistor radio quality signal.&lt;br /&gt;&lt;br /&gt;This was discouraging. For the heck of it I tried one of those cassette adapter things. It sounds great. Who'd a thunk it?&lt;br /&gt;&lt;br /&gt;Needless to say, the iTrips are going back. I already bought Melissa a cassette adapter for her car. We're all set!&lt;br /&gt;&lt;br /&gt;Oh, one more stroke of brilliance from our iTrip friends. They have a program you can download to find free stations. You select a state and city and it gives you a list of available frequencies. I can't believe they actually ship a program down to you to do this. Wouldn't it be better to be a web page? Having an offline copy isn't going to be useful 6 months from now. I can't believe that someone thought this was a good idea.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113474769530614893?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474769530614893'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474769530614893'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2003/12/itrip-is-piece-of-crap.html' title='The iTrip is a piece of crap'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113474775918072467</id><published>2003-12-28T09:42:00.000-05:00</published><updated>2005-12-16T10:42:39.180-05:00</updated><title type='text'>The iPod Rocketh</title><content type='html'>&lt;p&gt;Wow, what a cool device! Melissa and I both got the 40GB model for each other for Christmas. This is very fun! Mine is pretty much full. Melissa's will be about half full in a few minutes.&lt;br /&gt;&lt;br /&gt;What amazes me is that the iPod has been out for a while now and none of the other MP3 players have caught up. Sure, some have more features or whatever but the iPod is simple, elegant, and &lt;i&gt;does what I want it to do!&lt;/i&gt; Too many of those other devices are just too cumbersome and clearly rushed to market based on how their overall package performs. I guess I shouldn't be surprised that Creative Labs doesn't get it - they've always been an "also ran" contender - mediocrity at it's best.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113474775918072467?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hippietim.blogspot.com/feeds/113474775918072467/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=19817947&amp;postID=113474775918072467&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474775918072467'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474775918072467'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2003/12/ipod-rocketh.html' title='The iPod Rocketh'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113474788875220533</id><published>2003-12-23T10:43:00.000-05:00</published><updated>2005-12-16T10:44:48.753-05:00</updated><title type='text'>Whoohoo!</title><content type='html'>&lt;p&gt;My Christmas shopping is done!&lt;br /&gt;&lt;br /&gt;I just made my final trip to a shopping center before Christmas (he says with fingers crossed).&lt;br /&gt;&lt;br /&gt;Man, our kids are going to have a great Christmas!&lt;br /&gt;&lt;br /&gt;I hope Melissa likes her gifts.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113474788875220533?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474788875220533'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474788875220533'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2003/12/whoohoo.html' title='Whoohoo!'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113474803909983229</id><published>2003-12-22T10:45:00.000-05:00</published><updated>2005-12-16T10:47:19.100-05:00</updated><title type='text'>Why the retailers are in trouble</title><content type='html'>&lt;p&gt;On the news I keep hearing that retailers are dreading another slow season. With the holidays upon us naturally I've been doing the same thing as a lot of people. I've been Christmas shopping.&lt;br /&gt;&lt;br /&gt;The retailers are right. They aren't having a good season. I've been to several large and popular malls, electronics stores, department stores and specialty shops.&lt;br /&gt;&lt;br /&gt;Some of it has been great, I just breeze in and find a parking space no problem.&lt;br /&gt;&lt;br /&gt;Then I get in the stores and it's like a big freakin' joke.&lt;br /&gt;&lt;br /&gt;The attitude of the folks working in these stores is pathetic. This has been the worst customer service I have ever experienced during the holidays. And that is saying a lot considering I grew up outside of Washington, DC and have seen my share of rude sales people.&lt;br /&gt;&lt;br /&gt;Then there's the prices. Who are these people kidding? I go from store to store and they all have the same CRAP and it's WAY over priced. I know for a fact that some stuff I've been looking at was cheaper last month. WTF? Let's see if I understand this strategy. They can't unload the item all year at say 20 bucks. So for the holidays they jack the price up to 25 bucks. Makes sense to me.&lt;br /&gt;&lt;br /&gt;So I've turned to Ebay and other online merchants. The selection is better. The information is better. The folks that I've talked to on the phone to order things have been pleasant and efficient (this time of year I don't take chances with a web site's notion of "in stock").&lt;br /&gt;&lt;br /&gt;It's funny, the retailers say that online shopping won't take them over because of the customer service that only a local store can provide.  Sure, guys. You cling to that thought if that's what you need to get through the day.&lt;br /&gt;&lt;br /&gt;Here's my current case study: I've been looking for an item for a while for my wife. Several local retailers have various models available. I go to these stores and get treated like a dog. I'm not being pushy or anything. In fact, I have been exceptionally calm this holiday season because I decided I wasn't going to let anything bother me. At one store, I can't get any service at all and I don't want to interfere with the jovial grab ass that the 4 salesmen are playing in the middle of the store. I left. Another store, they're swamped so I just wait my turn. I can't believe how rude the salespeople are to the other customers. My moment comes and I ask a couple questions and I get the rolling-eyes treatment. Buh-bye. I should point out that the thing I'm interested in is not cheap and is substantially marked up so there should be a nice commission - it's not the Hope diamond but it ain't a pair of ear muffs either. One store I walked into was the worst. The salesman was at the back of the store, I'm wondering around he just stares, doesn't ask if he could help or anything. So I ask him if they have the item and he says there is one in the window but they're sold out. I go look in the window and there it is - exactly what I want. The right features, the right look, etc. I ask if he'll sell me the one in the window and he just says "nah". So I ask if any of their other stores have them in stock - "prolly not". Of course he says this in the crappiest tone he possibly can. That store will never get my business. Ever. Screw them. After a few more unsuccessful stops I decide to bag it and try my luck online. So I spent a while poking around on the web and found several options. Read a few reviews. You know the drill here.&lt;br /&gt;&lt;br /&gt;I ended up getting the same model as the the display that jerk wouldn't sell me. By the miracles of overnight shipping it will be here before Christmas. Even after paying overnight shipping, I saved over $150.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Me:&lt;/b&gt; Knock, knock.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Retailers:&lt;/b&gt; Knock, knock, who?&lt;br /&gt;&lt;br /&gt;silence...&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Retailers:&lt;/b&gt; Knock, knock, who?&lt;br /&gt;&lt;br /&gt;silence...&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Retailers:&lt;/b&gt; C'mon guys, knock, knock, who?&lt;br /&gt;&lt;br /&gt;silence...&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Retailers:&lt;/b&gt; Hey, why are you boarding up my windows?&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113474803909983229?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474803909983229'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474803909983229'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2003/12/why-retailers-are-in-trouble.html' title='Why the retailers are in trouble'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113474817355897826</id><published>2003-12-18T10:47:00.000-05:00</published><updated>2005-12-16T10:49:33.563-05:00</updated><title type='text'>So I went to visit Floyd Rose</title><content type='html'>&lt;p&gt;As it turns out &lt;a href="http://www.floydrose.com/" target="_blank"&gt;Floyd Rose&lt;/a&gt; is a local guy. A little while back buddy of mine had gotten one of the new Speedloader bridges from Floyd and his having &lt;a href="http://www.groshguitars.com/" target="_blank"&gt;Don Grosh&lt;/a&gt; build him a guitar.&lt;br /&gt;&lt;br /&gt;I've been wanting a guitar with a Speedloader for a while so when the &lt;a href="http://www.hackolutions.com/gear/oldgear/jacksontiedyesl1/tiedyesl1.htm" target="_blank"&gt;HippieCaster&lt;/a&gt; came last week I had the perfect guitar to put it on.&lt;br /&gt;&lt;br /&gt;I called Floyd up on Monday to ask him about retrofitting it and he said to just come on down and he'd take a look at it.&lt;br /&gt;&lt;br /&gt;Wednesday I dropped by and had him take a look at it. I gotta tell you it was really cool to have Floyd Rose &lt;i&gt;himself&lt;/i&gt; pop the bridge off my guitar and see how the Speedloader would fit. Well, it doesn't. The recessed route needs to go back further to accomodate the new bridge. Bummer. &lt;img src="http://www.tblog.com/community/images/smiles/icon_sad.gif" /&gt; The only way to do it would be to route it. He didn't think it'd be a good idea with that finish. I wasn't hip to the idea either. Even if I would have considered it, it would have cost a ton of money to have it routed and have the finish repaired - it just wouldn't be worth it.&lt;br /&gt;&lt;br /&gt;So Floyd says "why don't you try one of &lt;a href="http://www.floydrose.com/eblast.html" target="_blank"&gt;my guitars&lt;/a&gt; ?"&lt;br /&gt;&lt;br /&gt;Sure!&lt;br /&gt;&lt;br /&gt;So we walk over to the building where they manufacture the guitars. He also tells me to bring my guitar because JT (one of his luthiers) is a big Jackson fan.&lt;br /&gt;&lt;br /&gt;This was VERY cool. Floyd hands me a guitar that JT had just finished setting up. This guitar was amazing. He plugged it into a very sweet Marshall combo - JT had modded it, it screamed! This first guitar had really hot pair of humbuckers in it. The guitar had sustain forever. It was very light and resonant. The Speedloader felt really good.&lt;br /&gt;&lt;br /&gt;Then he hands me another guitar with their classic humbuckers in it. I liked this even better. The pickups were a bit more mellow but still had enough bite. They cleaned real nice too when you back off the volume control.&lt;br /&gt;&lt;br /&gt;Some interesting things worth mentioning: &lt;ul&gt;&lt;li&gt;The action was sooooo low. I couldn't believe how low JT gets the action with no buzzing.&lt;li&gt;Everything about Floyds guitars are unique in some way. The pickups are custom made (designed by JT), the neck has a unique feel and shape, unique pickguard design, and the Speedloader!&lt;li&gt;These guitars are made in the USA right there in the room I was in!&lt;li&gt;The Speedloader bridges are being made by Schaller.&lt;li&gt;They are making a set neck model - looks sort of like a cross between a Les Paul, Tele, and a PRS. Very nice - I saw the Korina bodies&lt;li&gt;They have a fixed bridge Speedloader in the works - I saw a Gibson SG they had modded for this.&lt;/li&gt;&lt;/ul&gt;Floyd hung around and chatted for a while. I thought he was very cool and particularly gracious with his time for some unknown guitar player! He got called away but that's when JT and I started talking - he is a super cool guy. He's a big Jackson/Charvel fan, used to work for Gibson, knows a ton about guitars, amps, etc.&lt;br /&gt;&lt;br /&gt;As we were talking he mentioned that he had put a Speedloader on one of Steve Vai's guitars. &lt;img src="http://www.tblog.com/community/images/smiles/icon_idea.gif" /&gt; So I asked him if he could put a Speedloader on my JEM7VWH. No problem. So today I brought my JEM to him. I should have it the day after Christmas. While I was there today I got a new bar for the HippieCaster since it was well worn and wasn't secure. Once again, everyone was super cool.&lt;br /&gt;&lt;br /&gt;So I think I will seriously be looking into a Floyd Rose guitar for my next purchase...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113474817355897826?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474817355897826'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474817355897826'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2003/12/so-i-went-to-visit-floyd-rose.html' title='So I went to visit Floyd Rose'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113474839409038284</id><published>2003-12-16T10:52:00.000-05:00</published><updated>2005-12-16T10:53:14.090-05:00</updated><title type='text'>Time to start "vacation"</title><content type='html'>I have a bunch of "use or lose" vacation built up so I'm basically taking the rest of the year off. Well, except that I've got to come in for sporadic meetings. That's better than nothing though.&lt;br /&gt;&lt;br /&gt;The rest of you, get back to work. Slackers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113474839409038284?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474839409038284'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474839409038284'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2003/12/time-to-start-vacation.html' title='Time to start &quot;vacation&quot;'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113474829210114943</id><published>2003-12-16T10:50:00.000-05:00</published><updated>2005-12-16T10:51:32.103-05:00</updated><title type='text'>Ran into a former coworker tonight</title><content type='html'>While doing a bit of Christmas shopping tonight I ran into a guy that I worked with on Internet Explorer 4.0. It was really cool to run into Sean. He did a bunch of cool work like the enhanced "Save As..." feature. He "retired" after IE 4.0 and has been traveling and slacking. Must be nice!&lt;br /&gt;He's thinking about getting back in the business after 5 years off - it's going to be very hard to get me back to work once I'm done!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113474829210114943?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474829210114943'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474829210114943'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2003/12/ran-into-former-coworker-tonight.html' title='Ran into a former coworker tonight'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113474823984070963</id><published>2003-12-16T10:49:00.000-05:00</published><updated>2005-12-16T10:50:39.840-05:00</updated><title type='text'>Preparing my New Year's resolutions</title><content type='html'>&lt;p&gt;&lt;ol&gt;&lt;li&gt;First and foremost, it's time to get in shape. The belly has got to go!&lt;br /&gt;&lt;li&gt;Record my music. I've fooled around with this for far too long. I will be working on creating a CD.&lt;br /&gt;&lt;li&gt;hmm...what else?&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113474823984070963?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474823984070963'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474823984070963'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2003/12/preparing-my-new-years-resolutions.html' title='Preparing my New Year&apos;s resolutions'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113475266623723372</id><published>2003-12-15T12:03:00.000-05:00</published><updated>2005-12-16T12:04:26.236-05:00</updated><title type='text'>Patience, we don't need no steenkin' patience!</title><content type='html'>&lt;p&gt;So my dad ordered Melissa something electronical (is that a word?) for Christmas and it arrived the other day. She was really baffled as to what it could be - BTW, the reason she knew it was an electronic gizmo is because it came from some place called JJ's Electronics (or something like that). Thus begins the guessing process. Let's see, what did she guess: &lt;ul&gt;&lt;li&gt;DVD player? &lt;li&gt;MP3 player? &lt;li&gt;toaster? &lt;li&gt;cell phone? (uh-oh we're getting warm) &lt;li&gt;computer? &lt;li&gt;etc.&lt;/li&gt;&lt;/ul&gt;A few minutes into it, Danny and Nicholas joined into the guessing game so naturally they thought it was something for video games. Ha! So Melissa and the boys were asking questions: &lt;ul&gt;&lt;li&gt;is it something I would use? &lt;li&gt;is it something you would use? &lt;li&gt;is it something for the whole family? &lt;li&gt;who has one? &lt;li&gt;do we have one? &lt;li&gt;which room in our house? (I'm not telling) &lt;li&gt;which floor in our house? (I'm still not telling) &lt;li&gt;what color? &lt;li&gt;is it black? &lt;li&gt;etc.&lt;/li&gt;&lt;/ul&gt;This went on for a looooong time. Then she finally got it after being very flustered with my evasive answers.&lt;br /&gt;&lt;br /&gt;Thanks for the phones pop. Although, I have to say that I'm not sure that we really need 6 handsets.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113475266623723372?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475266623723372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475266623723372'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2003/12/patience-we-dont-need-no-steenkin.html' title='Patience, we don&apos;t need no steenkin&apos; patience!'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113475258109638915</id><published>2003-12-15T12:02:00.000-05:00</published><updated>2005-12-16T12:03:40.746-05:00</updated><title type='text'>Dealing with guitars</title><content type='html'>So I finally got around to stringing the HippieCaster.  I hate stringing guitars - so why'd I become a guitar player?  Anyway, as I mentioned before the guitar was filthy and I had to do a serious cleaning on this thing.  In fact, I should probably clean it again.  The previous owner had it set up with .008 strings which is too light for me.  I put on .009s and of course it plays like crap now.  Argh, time to get out my &lt;a href="http://www.1800instruments.com/Archive/ghBooks12.htm" target="_blank"&gt;Dan Erlewine&lt;/a&gt; books, get some alcohol, and set it up.  What a pain.  I should probably save myself the trouble and take it to &lt;a href="http://www.mikelull.com" target="_blank"&gt;Mike Lull&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113475258109638915?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475258109638915'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113475258109638915'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2003/12/dealing-with-guitars.html' title='Dealing with guitars'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113474844991202985</id><published>2003-12-15T10:53:00.000-05:00</published><updated>2005-12-16T10:54:09.913-05:00</updated><title type='text'>Weapons of mass destruction</title><content type='html'>So if we go with the assumption that Sadam did in fact possess weapons of mass destruction at the time Bush started this, then the real concern should be &lt;b&gt;&lt;i&gt;where the hell are they?&lt;/i&gt;&lt;/b&gt; If they existed at that point in time, I believe that for the most part they still exist. I don't care if they're in Iraq or not - wherever they are, they are not in good hands. If you believe we were in eminent danger before this war because of parties hostile to us possessing weapons of mass destruction, nothing has changed. &lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113474844991202985?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474844991202985'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474844991202985'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2003/12/weapons-of-mass-destruction.html' title='Weapons of mass destruction'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113474835110013484</id><published>2003-12-15T10:51:00.000-05:00</published><updated>2005-12-16T10:52:31.100-05:00</updated><title type='text'>Thinking about a Speedloader</title><content type='html'>&lt;p&gt;I'm seriously thinking about putting a &lt;a href="http://www.floydrose.com" target="_blank"&gt;Floyd Rose Speedloader&lt;/a&gt; bridge on the &lt;a href="http://www.hackolutions.com/gear/oldgear/jacksontiedyesl1/tiedyesl1.htm" target="_blank"&gt;HippieCaster&lt;/a&gt;. I tried a few of Floyd's guitars out and a couple BC Rich's with the bridge on it and I really like the system. The idea of changing strings in seconds is REALLY appealing. I think I'll take the guitar with me tomorrow and run down to Floyd's place - fortunately from me he is 15 minutes from my office!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/19817947-113474835110013484?l=hippietim.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474835110013484'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/19817947/posts/default/113474835110013484'/><link rel='alternate' type='text/html' href='http://hippietim.blogspot.com/2003/12/thinking-about-speedloader.html' title='Thinking about a Speedloader'/><author><name>hippietim</name><uri>http://www.blogger.com/profile/16785695982726150702</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.hackolutions.com/tim1.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-19817947.post-113475291905681545</id><published>2003-12-12T12:07:00.000-05:00</published><updated>2005-12-16T12:08:39.060-05:00</updated><title type='text'>No sleep last night</title><content type='html'>&lt;p&gt;First, the kids were having a hard time going to sleep. Then we packed up the goodies for the folks back home (sorry nothing for Pop because of the sugar). Then we had to watch the new episode of ER.&lt;br /&gt;&lt;br /&gt;Melissa was tired and crashed. She was smart.&lt;br /&gt;&lt;br /&gt;I stayed up b
