<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Tools</title>
        <link>http://geekswithblogs.net/gpro/category/7744.aspx</link>
        <description>Tools</description>
        <language>en-US</language>
        <copyright>Gary Pronych</copyright>
        <managingEditor>gary.pronych@gmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <item>
            <title>Gmail Chat Bug: Excessive CPU Usage when Chat is blocked</title>
            <link>http://geekswithblogs.net/gpro/archive/2009/09/04/gmail-chat-bug-excessive-cpu-usage-when-chat-is-blocked.aspx</link>
            <description>For those of you using Gmail and the integrated Gmail chat client you could be affected by this bug if access to the Google talk server is blocked by a firewall or another method.
&lt;table width="100%" cellspacing="1" cellpadding="1" border="0" summary=""&gt;
    &lt;tbody&gt;
        &lt;tr&gt;
            &lt;td width="75%"&gt;
            &lt;p&gt;The past 2 weeks I noticed that Gmail is using 100% of one of my processors when I am at the office.&lt;br /&gt;
            Access to the Google talk servers is blocked at our firewall so my Gmail integrated chat client is disabled when in Gmail, at least that is what Gmail tells me. &lt;br /&gt;
            See the attached picture on the right.&lt;br /&gt;
            &lt;br /&gt;
            However, when the integrated chat is expanded (+) it uses 100% of one processor even though it reads 'chat is disabled'.&lt;br /&gt;
            If I collapse the chat module (-) this problem goes away, processor usage goes to normal levels.&lt;br /&gt;
            &lt;br /&gt;
            I assume the Gmail chat client is unneccessarily trying to connect to the chat server even though the client is 'disabled'. &lt;br /&gt;
            Fail!&lt;br /&gt;
            &lt;br /&gt;
            I have posted this bug on Google forums and I will update this post once I have been notified this has been resolved.&lt;br /&gt;
            &lt;a href="http://www.google.com/support/forum/p/gmail/thread?tid=4ba2c7660e1a21d6&amp;amp;hl=en"&gt;http://www.google.com/support/forum/p/gmail/thread?tid=4ba2c7660e1a21d6&amp;amp;hl=en&lt;/a&gt;&lt;/p&gt;
            &lt;p&gt;For now, if your chat client is disabled, collapse the feature or else you will be running with one less processor.&lt;br /&gt;
            &lt;/p&gt;
            &lt;/td&gt;
            &lt;td width="25%"&gt;
            &lt;p&gt; &lt;/p&gt;
            &lt;p&gt;&lt;img src="http://geekswithblogs.net/images/geekswithblogs_net/gpro/7676/r_Gmail.Chat.Disabled.PNG" alt="Gmail Chat Disabled" /&gt;&lt;/p&gt;
            *Gmail integrated chat client expanded &lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;
I have confirmed this a problem with&lt;br /&gt;
- FireFox 3.5.2 &lt;br /&gt;
- Chrome 2.0.172.43&lt;br /&gt;
&lt;br /&gt;
Gary Pronych&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=134495"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=134495" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/gpro/aggbug/134495.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Gary Pronych</dc:creator>
            <guid>http://geekswithblogs.net/gpro/archive/2009/09/04/gmail-chat-bug-excessive-cpu-usage-when-chat-is-blocked.aspx</guid>
            <pubDate>Fri, 04 Sep 2009 16:15:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/gpro/comments/134495.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/gpro/archive/2009/09/04/gmail-chat-bug-excessive-cpu-usage-when-chat-is-blocked.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/gpro/comments/commentRss/134495.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/gpro/services/trackbacks/134495.aspx</trackback:ping>
        </item>
        <item>
            <title>Tether your BlackBerry for Internet Sharing</title>
            <link>http://geekswithblogs.net/gpro/archive/2009/07/04/tether-your-blackberry-for-internet-sharing.aspx</link>
            <description>&lt;p&gt;There is some confusion in how-to setup a BlackBerry in tether mode to share internet with your laptop or PC so I would like to share my setup process. &lt;br /&gt;
&lt;/p&gt;
&lt;h4&gt;Overview:&lt;/h4&gt;
&lt;p&gt;Since you are already paying for a data plan why not take advantage of this data connection when you are away from home? Hotels and other facilities can charge you $15+ per day for Internet access. &lt;br /&gt;
BlackBerry and other hardware providers allow you to tether your smart phone as a modem to your laptop or computer.&lt;/p&gt;
&lt;p&gt;Keep in mind that your tethered modem will not operate any faster than your data plan. &lt;br /&gt;
GPRS and EDGE will give you 2G speeds of approximately 56 – 114 kbit/s depending on signal strength; which will be similar to a dialup modem connection. &lt;br /&gt;
3G can provide up to 14.4 MBit/s download and 5.8 MBit/s upload.&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="http://www.blackberry.com/btsc/search.do?cmd=displayKC&amp;amp;docType=kc&amp;amp;externalId=KB05196&amp;amp;sliceId=SAL_Public&amp;amp;dialogID=1114305&amp;amp;stateId=1%200%201132277"&gt;RIM has provided instructions on how-to connect to the Internet using a GPRS, EDGE or UMTS smart phone as a tethered modem&lt;/a&gt;. &lt;br /&gt;
I had to make some modifications to these instructions to allow my smart phone to properly allow tethered access to the Internet. It is possible that each smart phone provider has slightly different setup so these instructions may not work for you. &lt;br /&gt;
These instructions work on the &lt;a target="_blank" href="http://www.rogers.com/web/Rogers.portal?_nfpb=true&amp;amp;_pageLabel=WRLS_HOME"&gt;Rogers Canada wireless network&lt;/a&gt;, in particular, a BlackBerry Curve 8300. &lt;br /&gt;
These instructions should work with other data devices in tether mode.&lt;/p&gt;
&lt;h4&gt;Setup:&lt;/h4&gt;
&lt;p&gt;_______________________________________________________________________________________________________________________________________________________________________________________&lt;/p&gt;
&lt;p&gt;Step 1) Download the Software &lt;br /&gt;
&lt;strong&gt;Do this first&lt;/strong&gt;, &lt;a target="_blank" href="https://www.blackberry.com/Downloads/entry.do?code=A8BAA56554F96369AB93E4F3BB068C22"&gt;Download the BlackBerry Desktop Software 4.1 or later&lt;/a&gt; which will install the USB and virtual com ports. &lt;br /&gt;
Otherwise your computer will not discover your mobile device.&lt;/p&gt;
&lt;p&gt;The desktop software will allow you to copy files to your smart phone such as MP3, videos and load applications.&lt;/p&gt;
&lt;p&gt;_______________________________________________________________________________________________________________________________________________________________________________________&lt;/p&gt;
&lt;p&gt;Step 2) Setup an APN (If Required) &lt;br /&gt;
Task 2 of the RIM instructions states you need to setup an Internet APN (Access Point Name), some data providers may not require an APN. &lt;br /&gt;
I found an &lt;strong&gt;APN is not needed as part of the Rogers wireless network&lt;/strong&gt;. Do not setup an APN if you use Rogers or else your tethered modem will not work. &lt;br /&gt;
&lt;em&gt;&lt;br /&gt;
If you do not know your Internet APN or have connection troubles, contact your service provider.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;To Set up Internet APN&lt;/strong&gt; &lt;br /&gt;
From your PC:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Go to &lt;strong&gt;Start&lt;/strong&gt; &amp;gt; &lt;strong&gt;Settings&lt;/strong&gt; &amp;gt; &lt;strong&gt;Control Panel&lt;/strong&gt; &lt;/li&gt;
    &lt;li&gt;Double-click &lt;strong&gt;Phone and Modem Options&lt;/strong&gt; &lt;/li&gt;
    &lt;li&gt;In the Phone and Modem Options window, click the &lt;strong&gt;Modems&lt;/strong&gt; tab &lt;/li&gt;
    &lt;li&gt;Select &lt;strong&gt;Standard Modem&lt;/strong&gt; and click &lt;strong&gt;Properties&lt;/strong&gt; &lt;/li&gt;
    &lt;li&gt;In the Standard Modem Properties window, Click the &lt;strong&gt;Advanced&lt;/strong&gt; Tab &lt;/li&gt;
    &lt;li&gt;In the &lt;strong&gt;Extra initialization commands&lt;/strong&gt; field, type the following: &lt;strong&gt;+cgdcont=1,”IP”,”&lt;/strong&gt;&lt;em&gt;&lt;strong&gt;your Internet APN” &lt;br /&gt;
    &lt;/strong&gt;ie. +cgdcont=1, “IP”, “Internet.com”&lt;/em&gt; &lt;/li&gt;
    &lt;li&gt;Click &lt;strong&gt;OK&lt;/strong&gt; &lt;/li&gt;
    &lt;li&gt;In the Phone and Modem Options window, click &lt;strong&gt;OK&lt;/strong&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;_______________________________________________________________________________________________________________________________________________________________________________________&lt;/p&gt;
&lt;p&gt;Step 3) Configure Dial-up Network&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Windows Vista&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Click &lt;strong&gt;Start&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;Select &lt;strong&gt;Connect To&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;Click &lt;strong&gt;Setup a connection or network&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;Click &lt;strong&gt;Setup a dialup connection&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;In the Dial-up phone number field type &lt;strong&gt;*99#&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;Type the user name and password provided by your service provider. &lt;/li&gt;
    &lt;li&gt;In the &lt;strong&gt;Connection Name&lt;/strong&gt; field type &lt;strong&gt;BlackBerry &lt;/strong&gt;(or any name you wish). &lt;/li&gt;
    &lt;li&gt;Click &lt;strong&gt;Dialing Rules&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;Make sure the APN profile created in Step 2 has been selected (if required), and then click &lt;strong&gt;OK&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;Select &lt;strong&gt;Connect&lt;/strong&gt; to establish an internet. &lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Windows XP operating system&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Click &lt;strong&gt;Start&lt;/strong&gt; &amp;gt; &lt;strong&gt;Settings&lt;/strong&gt; &amp;gt; &lt;strong&gt;Network Connections&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;Double-click &lt;strong&gt;New Connection Wizard&lt;/strong&gt;. The New Connection Wizard opens. &lt;/li&gt;
    &lt;li&gt;Click &lt;strong&gt;Next&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;Select the &lt;strong&gt;Connect to the Internet&lt;/strong&gt; option. Click &lt;strong&gt;Next&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;Select &lt;strong&gt;Set up my connection manually&lt;/strong&gt;. Click &lt;strong&gt;Next&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;Select &lt;strong&gt;Connect using a dial-up modem&lt;/strong&gt;. Click &lt;strong&gt;Next&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;If the &lt;strong&gt;Select a Device&lt;/strong&gt; screen appears, select the &lt;strong&gt;Modem - Standard Modem&lt;/strong&gt; check box. Click &lt;strong&gt;Next&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;In the &lt;strong&gt;ISP Name&lt;/strong&gt; field, type a name for your connection. Click &lt;strong&gt;Next&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;In the &lt;strong&gt;Phone number&lt;/strong&gt; field, type &lt;strong&gt;*99#&lt;/strong&gt;. Click &lt;strong&gt;Next.&lt;/strong&gt; &lt;/li&gt;
    &lt;li&gt;Indicate which users will have access to the connection. Click &lt;strong&gt;Next&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;Type the user name and password provided by your service provider. Click &lt;strong&gt;Next&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;Click &lt;strong&gt;Finish&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;In the Connect window, click &lt;strong&gt;Properties&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;In the Properties window, verify that &lt;strong&gt;Modem - Standard Modem&lt;/strong&gt; appears beneath the &lt;strong&gt;Connect using&lt;/strong&gt; heading, and then click &lt;strong&gt;Configure&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;In the Modem Configuration window, clear the &lt;strong&gt;Enable hardware flow control&lt;/strong&gt; check box and make sure none of the other check boxes are selected. Click &lt;strong&gt;OK&lt;/strong&gt;. In the Properties window, click &lt;strong&gt;OK&lt;/strong&gt;. &lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;_______________________________________________________________________________________________________________________________________________________________________________________&lt;/p&gt;
&lt;p&gt;Step 4) Connect to the Internet using Dial-up Network&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Power on your BlackBerry smart phone and connect it to the computer / laptop. &lt;/li&gt;
    &lt;li&gt;Open BlackBerry Desktop Manager. &lt;/li&gt;
    &lt;li&gt;Click &lt;strong&gt;Start&lt;/strong&gt; &amp;gt; &lt;strong&gt;Settings&lt;/strong&gt; &amp;gt; &lt;strong&gt;Network Connections&lt;/strong&gt; &amp;gt; &lt;strong&gt;&amp;lt;&lt;em&gt;name of your new connection&lt;/em&gt;&amp;gt;&lt;/strong&gt;. &lt;/li&gt;
    &lt;li&gt;Type the user name and password provided by your service provider. &lt;/li&gt;
    &lt;li&gt;Click &lt;strong&gt;Dial&lt;/strong&gt;. &lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The user name and password for the Rogers Wireless network is &lt;br /&gt;
user name: wapuser1 &lt;br /&gt;
password: wap&lt;/p&gt;
&lt;p&gt;_______________________________________________________________________________________________________________________________________________________________________________________&lt;/p&gt;
&lt;h4&gt;Troubleshooting:&lt;/h4&gt;
&lt;p&gt;There are all sorts of posts on various forums looking for setup instructions and APN values. &lt;br /&gt;
Be sure to contact you data phone provider for APN settings, it is very likely they will offer you very little to no support on this setup process (I have been told by family and friends).&lt;/p&gt;
&lt;p&gt;Common problems I found are &lt;br /&gt;
- APN issues &lt;br /&gt;
- Desktop Manager must be running in order tether your device&lt;/p&gt;
&lt;p&gt;Happy Tethering!&lt;/p&gt;
&lt;p&gt;Gary Pronych&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133256"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133256" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/gpro/aggbug/133256.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Gary Pronych</dc:creator>
            <guid>http://geekswithblogs.net/gpro/archive/2009/07/04/tether-your-blackberry-for-internet-sharing.aspx</guid>
            <pubDate>Sat, 04 Jul 2009 14:20:39 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/gpro/comments/133256.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/gpro/archive/2009/07/04/tether-your-blackberry-for-internet-sharing.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/gpro/comments/commentRss/133256.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/gpro/services/trackbacks/133256.aspx</trackback:ping>
        </item>
        <item>
            <title>ClickOnce: Restore a Previous Version of an Application</title>
            <link>http://geekswithblogs.net/gpro/archive/2008/10/30/clickonce-restore-previous-version.aspx</link>
            <description>&lt;p&gt;As a standard, we use ClickOnce to deploy all of our applications.&lt;br /&gt;
&lt;br /&gt;
I don't want to get into all the benefits as I have discussed some in a &lt;a href="http://geekswithblogs.net/gpro/archive/2008/03/16/clickonce-winforms-deployment-part-1.aspx"&gt;previous post&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
To summarize my scenario, I do software development for a 24 x 7 x 365 manufacturing plant.&lt;br /&gt;
Our systems must always be online and we must provide after hours support.&lt;br /&gt;
&lt;br /&gt;
This week, one of our developers deployed an update to his end users.&lt;br /&gt;
It was not until 7 PM that the end user determined there was a significant bug in the application that could cause a mill delay. (Bad!)&lt;br /&gt;
I was on call and I was not at all familiar with this application, luckily the developer notified the team of this update and the fixes included. The bug was a part of one of these fixes, so I knew I could rollback to the previous version so the end user can continue his job and this new bug can be resolved during the next business day.&lt;br /&gt;
&lt;br /&gt;
As a developer, you may consider something like &lt;br /&gt;
'grabbing the source code for the previous version, build it, and deploy'; which can be time time consuming.&lt;br /&gt;
With ClickOnce, you have 2 easy to use options.&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-weight: bold;"&gt;1) Change the Version on the Client&lt;/span&gt;&lt;br /&gt;
- Ask the end user (or remote control) to navigate to the CONTROL PANEL -&amp;gt; ADD REMOVE PROGRAMS&lt;br /&gt;
- Scroll down the list of applications until you find your application name, in my case it is called RSA&lt;br /&gt;
- Click Change/Remove&lt;br /&gt;
- You will then have two options&lt;br /&gt;
a) Restore the application to its previous state&lt;br /&gt;
b) Remove the application from this computer&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;&lt;img src="/images/geekswithblogs_net/gpro/7676/r_ClickOnce_Add.Remove_Restore.JPG" alt="" /&gt;&lt;br /&gt;
&lt;br /&gt;
Select a) and the previous build will become the current version.&lt;br /&gt;
The caveat is the user must use Start -&amp;gt; All Programs -&amp;gt; Your Application Folder -&amp;gt; Your Application Name &amp;lt;RSA&amp;gt; to load the previous version.&lt;br /&gt;
They must run the application from the install folder to get the newest update.&lt;br /&gt;
&lt;br /&gt;
This option works for a single client and is a temporary solution, what if a permanant rolback is required?&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-weight: bold;"&gt;2) Change the Current Application Version&lt;/span&gt;&lt;br /&gt;
You have likely published a number of version of your application so you ClickOnce publish folder may look like this.&lt;br /&gt;
&lt;br /&gt;
&lt;img height="646" width="546" src="/images/geekswithblogs_net/gpro/7676/o_ClickOnce_On.Network.JPG" alt="" /&gt;&lt;br /&gt;
&lt;br /&gt;
You will see in this picture, there are a number of &amp;lt;ApplicationName&amp;gt;_&amp;lt;version&amp;gt;.application files as well as folders.&lt;br /&gt;
There is only 1 application with the name &amp;lt;ApplicationName&amp;gt;.application, in this my scenario it is called RSA.application.&lt;br /&gt;
&lt;br /&gt;
My latest build is 1_1_0_14, to restore to 1_1_0_12 I need to follow these steps&lt;br /&gt;
- delete RSA.application&lt;br /&gt;
- Make a copy of RSA_1_1_0_12.application and rename it RSA.application&lt;br /&gt;
&lt;br /&gt;
The next time a user of this application attempts to load their application, they will be notified of an update. Once they select OK, they will be rolled back to 1_1_0_12.&lt;br /&gt;
&lt;br /&gt;
Hope this helps,&lt;br /&gt;
Gary Pronych&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=126407"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=126407" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/gpro/aggbug/126407.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Gary Pronych</dc:creator>
            <guid>http://geekswithblogs.net/gpro/archive/2008/10/30/clickonce-restore-previous-version.aspx</guid>
            <pubDate>Thu, 30 Oct 2008 18:37:09 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/gpro/comments/126407.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/gpro/archive/2008/10/30/clickonce-restore-previous-version.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/gpro/comments/commentRss/126407.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/gpro/services/trackbacks/126407.aspx</trackback:ping>
        </item>
        <item>
            <title>Determine .NET Framework Version of an Application</title>
            <link>http://geekswithblogs.net/gpro/archive/2008/08/27/determine-.net-framework-version-of-an-application.aspx</link>
            <description>I needed to find the version of .NET framework required for a vendor provided application in short order; there was no documentation (of course), the vendor was not available and the super user was not available.&lt;br /&gt;
Your typical support scenario.&lt;br /&gt;
&lt;br /&gt;
When you try to run a .NET EXE on a computer that does not have the framework, your application informs you with a prompt along the lines of 'The Application Requires .NET framework version x.x'&lt;br /&gt;
If you have the framework installed, it does not prompt you (of course).&lt;br /&gt;
&lt;br /&gt;
I figured it should be as easy as right clicking the EXE and selecting properties or something similar, but no.&lt;br /&gt;
The easiest way I found was by using the MSIL Disassembler ildasm.exe&lt;br /&gt;
If you have installed the 2.0 SDK you can find ILDASM.exe in this location&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-weight: bold;"&gt;c:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\ildasm.exe&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
The steps to get the .NET framework version are as follows:&lt;br /&gt;
1) Execute ILDASM.EXE from the SDK folder noted above&lt;br /&gt;
2) In ILDASM select the File | Open menu&lt;br /&gt;
3) Select the EXE or DLL you want to disassemble&lt;br /&gt;
&lt;br /&gt;
ILDASM will now show you the file you selected in #3. You will want to double click the MANIFEST and it will load the manifest in a notepad-like editor.&lt;br /&gt;
The top line will read //Medata version: vX.X.XXXX&lt;br /&gt;
Where the X.X.XXXX is your .NET framework version.&lt;br /&gt;
&lt;br /&gt;
See the image below&lt;br /&gt;
&lt;br /&gt;
&lt;img src="http://geekswithblogs.net/images/geekswithblogs_net/gpro/7676/r_ILDASM.PNG" alt="ILDASM.exe" /&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=124719"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=124719" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/gpro/aggbug/124719.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Gary Pronych</dc:creator>
            <guid>http://geekswithblogs.net/gpro/archive/2008/08/27/determine-.net-framework-version-of-an-application.aspx</guid>
            <pubDate>Wed, 27 Aug 2008 08:39:31 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/gpro/comments/124719.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/gpro/archive/2008/08/27/determine-.net-framework-version-of-an-application.aspx#feedback</comments>
            <slash:comments>5</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/gpro/comments/commentRss/124719.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/gpro/services/trackbacks/124719.aspx</trackback:ping>
        </item>
        <item>
            <title>The Shortcomings of Windows 2008 Server Core</title>
            <link>http://geekswithblogs.net/gpro/archive/2008/04/05/the-shortcomings-of-windows-2008-server-core.aspx</link>
            <description>I spent a couple hours today installing Windows Server 2008 on my home server.&lt;br /&gt;
I have to admit, this was the easiest and fastest Windows OS software install I &lt;span style="font-weight: bold;"&gt;*EVER*&lt;/span&gt; completed. &lt;img src="/Providers/BlogEntryEditor/FCKeditor/editor/images/smiley/msn/omg_smile.gif" alt="" /&gt;&lt;br /&gt;
&lt;br /&gt;
My goal was to build a Windows 2008 Server as a VPC host using Hyper-V; I literally spent more time installing the Hyper-V Role than installing the Win2k8 OS (I suppose this is the benefit of Role based installations). &lt;br /&gt;
Do yourself a favor and download this &lt;a href="http://www.grc.com/securable.htm"&gt;utility (http://www.grc.com/securable.htm)&lt;/a&gt; to verify your BIOS is configured properly if you are going to use Hyper-V.&lt;br /&gt;
They do a good job in explaining WTF these features are, and how to enable them.&lt;br /&gt;
&lt;br /&gt;
Now I had my VPC host running, my next task was to answer this question, 'What is all the buzz about Windows 2008 Server Core... and could it make my life easier?'&lt;br /&gt;
&lt;span style="font-weight: bold;"&gt;The simple answer (as a .NET user / developer)? No&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
The concept of a Server Core is solid;&lt;br /&gt;
- Smaller footprint, smaller attack surface&lt;br /&gt;
- Install only the features you need in the form of Roles&lt;br /&gt;
&lt;br /&gt;
Why Server Core sucks?&lt;br /&gt;
1) I am a Windows guy, not a *nix guy, so the lack of GUI was going to make my life difficult&lt;br /&gt;
2) None of these features currently work in Server Core (&lt;a href="http://technet2.microsoft.com/windowsserver2008/en/library/47a23a74-e13c-46de-8d30-ad0afb1eaffc1033.mspx?mfr=true"&gt;Known Issues&lt;/a&gt;)&lt;br /&gt;
&lt;ul&gt;
    &lt;li&gt;IIS-ASPNET&lt;/li&gt;
    &lt;li&gt;IIS-NetFxExtensibility&lt;/li&gt;
    &lt;li&gt;IIS-ManagementConsole&lt;/li&gt;
    &lt;li&gt;IIS-ManagementService&lt;/li&gt;
    &lt;li&gt;IIS-LegacySnapIn&lt;/li&gt;
    &lt;li&gt;IIS-FTPManagement&lt;/li&gt;
    &lt;li&gt;WAS-NetFxEnvironment&lt;/li&gt;
    &lt;li&gt;WAS-ConfigurationAPI&lt;/li&gt;
&lt;/ul&gt;
The key reason for issue #2 is explained as&lt;br /&gt;
'&lt;span style="font-weight: bold; font-style: italic;"&gt;The Web Server (IIS) role does not support ASP.NET in Server Core installations.&lt;/span&gt;&lt;br style="font-weight: bold; font-style: italic;" /&gt;
&lt;span style="font-weight: bold; font-style: italic;"&gt;Because there is no support for managed code, the following IIS features are not available in Server Core installations&lt;/span&gt;'&lt;br /&gt;
&lt;br /&gt;
Now, read the second line carefully and say with me, "&lt;span style="font-weight: bold;"&gt;NO SUPPORT FOR MANAGED CODE&lt;/span&gt;".&lt;br /&gt;
&lt;br /&gt;
Yes folks, that means all .NET code, ASP.NET, WinForms, SQL 2005... any and ALL products build on .NET.&lt;br /&gt;
WoW, I have to catch my breath... no .NET support on a Microsoft product; I might as well install Windows NT 4.&lt;br /&gt;
Well, at least Server Core 2008 supports ASP and PHP (!)... well, so does NT 4.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.enusbaum.com/blog/2008/02/21/can-a-microsoft-virtual-pc-vhd-work-in-windows-2008-hyper-v/"&gt;At least I can convert my VPC / Virtual Server 2005 R2 VHD's to be Hyper-V compatible&lt;/a&gt;.&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=121066"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=121066" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/gpro/aggbug/121066.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Gary Pronych</dc:creator>
            <guid>http://geekswithblogs.net/gpro/archive/2008/04/05/the-shortcomings-of-windows-2008-server-core.aspx</guid>
            <pubDate>Sat, 05 Apr 2008 17:46:31 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/gpro/comments/121066.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/gpro/archive/2008/04/05/the-shortcomings-of-windows-2008-server-core.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/gpro/comments/commentRss/121066.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/gpro/services/trackbacks/121066.aspx</trackback:ping>
        </item>
        <item>
            <title>ClickOnce: Winforms Deployment - Part 1</title>
            <link>http://geekswithblogs.net/gpro/archive/2008/03/16/clickonce-winforms-deployment-part-1.aspx</link>
            <description>Currently my client has a number of WinForm applications in development.&lt;br /&gt;
When it came time to deploy these solutions to end users in multiple facilities, discussions of xcopy installations started.&lt;br /&gt;
&lt;br /&gt;
Xcopy is not the best solution; in the past it has been servicable to meet this requirement, today we have better options.&lt;br /&gt;
&lt;br /&gt;
Some of the flaws of xcopy deployment include&lt;br /&gt;
- &lt;span style="font-weight: bold;"&gt;Network connectivity required&lt;/span&gt;: if the PC is off it will not get the update&lt;br /&gt;
- &lt;span style="font-weight: bold;"&gt;Installation Lists: &lt;/span&gt;You need to know which PC's have your software for when updates are available&lt;br /&gt;
- &lt;span style="font-weight: bold;"&gt;Versioning: &lt;/span&gt;Some clients may be running different versions which could damage your data integrity&lt;br /&gt;
- &lt;span style="font-weight: bold;"&gt;Dependencies: &lt;/span&gt;If your software requires any components, you will have to create an installer for each version&lt;br /&gt;
&lt;br /&gt;
Since Visual Studio 2005, including 2008, there is a feature built-in feature know as &lt;a href="http://msdn2.microsoft.com/en-us/library/t71a733d(VS.80).aspx"&gt;ClickOnce&lt;/a&gt;.&lt;br /&gt;
It is my experience is that this 'out of the box' feature is under utilized or developers are not aware that this feature exists.&lt;br /&gt;
&lt;br /&gt;
ClickOnce Provides:&lt;br /&gt;
- &lt;span style="font-weight: bold;"&gt;Automatic Update: &lt;/span&gt;The application 'calls home' to check for the newest version, clients are prompted to update their version&lt;br /&gt;
- &lt;span style="font-weight: bold;"&gt;Rollback&lt;/span&gt;: The client can rollback using Add/Remove; the developer can also make the adjustments using the published version&lt;br /&gt;
&lt;br /&gt;
You can publish an application can be publish to&lt;br /&gt;
1) A URL&lt;br /&gt;
2) File location including on your network &lt;br /&gt;
&lt;br /&gt;
I won't get into the specifics of the options; they are pretty straight forward and there are articles on how to use the &lt;a href="http://msdn2.microsoft.com/en-us/library/31kztyey(VS.80).aspx"&gt;publish wizard&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
But what if you have to deploy and manage a legacy application, or a vendor provided application?&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;Managing Other Windows Applications using ClickOnce&lt;/h3&gt;
After my client started seeing the benefits of ClickOnce, the next question was, 'Can I use this for my vendor provided applications?'.&lt;br /&gt;
This is actually very easy to implement.&lt;br /&gt;
&lt;br /&gt;
1) Create a new Visual Studio project&lt;br /&gt;
2) Copy your vendor provided components into your project &lt;br /&gt;
3) Call the application executable in your code&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
namespace AppLauncher&lt;br /&gt;
{&lt;br /&gt;
   class Program&lt;br /&gt;
   {&lt;br /&gt;
      static void Main(string[] args)&lt;br /&gt;
      {&lt;br /&gt;
         Process.Start("LegacyApp.exe"); //put your executable name here&lt;br /&gt;
      }&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
4) Publish the application with the above publishing wizard.&lt;br /&gt;
&lt;br /&gt;
Anytime the vendor provides an update, overwrite the project files, increment the publish version and publish the update.&lt;br /&gt;
Next time your end user executes the Launcher application, they will be prompted to update their application.&lt;br /&gt;
&lt;br /&gt;
We have used this strategy for deploying applications to less than 20 internal users and it has worked well.&lt;br /&gt;
We looked into options of creating a 'Whats New' message on first load; which is something we may still look into for the future.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In part 2 of this series, I will describe some troubleshooting and advanced details that will assist you with ClickOnce.&lt;br /&gt;
&lt;br /&gt;
&lt;img width="797" height="706" src="/images/geekswithblogs_net/gpro/7676/o_ClickOnce.png" alt="" /&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=120579"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=120579" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/gpro/aggbug/120579.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Gary Pronych</dc:creator>
            <guid>http://geekswithblogs.net/gpro/archive/2008/03/16/clickonce-winforms-deployment-part-1.aspx</guid>
            <pubDate>Sun, 16 Mar 2008 14:27:07 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/gpro/comments/120579.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/gpro/archive/2008/03/16/clickonce-winforms-deployment-part-1.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/gpro/comments/commentRss/120579.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/gpro/services/trackbacks/120579.aspx</trackback:ping>
        </item>
        <item>
            <title>How to Install: Subversion and CruiseControl.NET</title>
            <link>http://geekswithblogs.net/gpro/archive/2008/03/02/how-to-install-subversion-and-cruisecontrol.net.aspx</link>
            <description>&lt;a href="http://www.shaneo.ca/"&gt;Shaneo &lt;/a&gt;just posted 2 how-to articles that every development team should be using; Source Control and Continuous Integration.&lt;br /&gt;
&lt;br /&gt;
1) &lt;a href="http://www.shaneo.ca/Comments.aspx?ArticleID=193"&gt;Subversion Install Quick Tutorial&lt;/a&gt;&lt;br /&gt;
Subversion is a free source control management server that integrates seemlessly with Visual Studio.&lt;br /&gt;
&lt;br /&gt;
2) &lt;a href="http://www.shaneo.ca/Comments.aspx?ArticleID=194"&gt;CruiseControl.Net Install and Configure Quick Tutorial&lt;/a&gt;&lt;br /&gt;
CruiseControl.NET is an automated &lt;a href="http://www.martinfowler.com/articles/continuousIntegration.html"&gt;Continuous Integration&lt;/a&gt; server.&lt;br /&gt;
CC.NET automates the integration process by monitoring your source control repository. &lt;br /&gt;
Every time a developer commits changes, the server will automatically launch an integration build to validate the changes. This integration build will notify the developer if the changes integrated successfully or not.&lt;br /&gt;
&lt;br /&gt;
Great articles Shane.&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=120132"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=120132" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/gpro/aggbug/120132.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Gary Pronych</dc:creator>
            <guid>http://geekswithblogs.net/gpro/archive/2008/03/02/how-to-install-subversion-and-cruisecontrol.net.aspx</guid>
            <pubDate>Sun, 02 Mar 2008 15:39:33 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/gpro/comments/120132.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/gpro/archive/2008/03/02/how-to-install-subversion-and-cruisecontrol.net.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/gpro/comments/commentRss/120132.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/gpro/services/trackbacks/120132.aspx</trackback:ping>
        </item>
    </channel>
</rss>