<?xml version="1.0" encoding="utf-8"?>
<feed xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xml:lang="en-gb" xmlns="http://www.w3.org/2005/Atom">
  <title>{ Duane.Wingett }</title>
  <link rel="alternate" type="text/html" href="http://www.duanewingett.info/" />
  <link rel="self" href="http://www.duanewingett.info/SyndicationService.asmx/GetAtom" />
  <icon>favicon.ico</icon>
  <updated>2010-09-02T19:12:30.819625+01:00</updated>
  <author>
    <name>Duane Wingett</name>
  </author>
  <subtitle>.Net Code Monkey</subtitle>
  <id>http://www.duanewingett.info/</id>
  <generator uri="http://www.dasblog.net" version="2.0.7180.0">DasBlog</generator>
  <entry>
    <title>Mixed Scope Properties in .Net</title>
    <link rel="alternate" type="text/html" href="http://www.duanewingett.info/2010/09/02/MixedScopePropertiesInNet.aspx" />
    <id>http://www.duanewingett.info/PermaLink,guid,5967e8bc-786b-4dba-bb90-a68eb3c13017.aspx</id>
    <published>2010-09-02T19:06:44.647+01:00</published>
    <updated>2010-09-02T19:12:30.819625+01:00</updated>
    <category term=".Net" label=".Net" scheme="http://www.duanewingett.info/CategoryView,category,.Net.aspx" />
    <category term="Asp.Net" label="Asp.Net" scheme="http://www.duanewingett.info/CategoryView,category,Asp.Net.aspx" />
    <category term="C#" label="C#" scheme="http://www.duanewingett.info/CategoryView,category,C%23.aspx" />
    <category term="Scope" label="Scope" scheme="http://www.duanewingett.info/CategoryView,category,Scope.aspx" />
    <category term="VB Script" label="VB Script" scheme="http://www.duanewingett.info/CategoryView,category,VB%2BScript.aspx" />
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <h3>Mixed Scope Properties in .Net
</h3>
        <p>
There may be a time when you want to have mixed scope for your "Getters" and "Setters"
in a property. For those of you who are not familiar with the syntax here it is
</p>
        <p>
VB:
</p>
        <pre>
          <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: black; FONT-SIZE: 11px">
            <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Public</span>
            <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Property</span> MyProperty <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">as</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">String</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Get</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Return</span> _myField <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">End</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Get</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Private</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Set</span> _myField <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span> Value <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">End</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Set</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">End</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Property</span></span>
        </pre>
        <p>
This example allows a public "Getter" and a private "Setter". 
</p>
        <p>
The same can be done in C#:
</p>
        <pre>
          <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: black; FONT-SIZE: 11px">
            <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">public</span>
            <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">string</span> MyProperty
{ <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">get</span> { <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">return</span> _myField;
} <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">private</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">set</span> {
_myField <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span> value;
} }</span>
        </pre>
        <p>
Hope you find that useful.
</p>
        <p>
Regards,
</p>
        <p>
Dib.
</p>
        <img width="0" height="0" src="http://www.duanewingett.info/aggbug.ashx?id=5967e8bc-786b-4dba-bb90-a68eb3c13017" />
      </div>
    </content>
  </entry>
  <entry>
    <title>VB.Net Single Instance application on Terminal Server </title>
    <link rel="alternate" type="text/html" href="http://www.duanewingett.info/2010/07/30/VBNetSingleInstanceApplicationOnTerminalServer.aspx" />
    <id>http://www.duanewingett.info/PermaLink,guid,3c6c00f1-740c-4bf2-b6ec-3875ad339beb.aspx</id>
    <published>2010-07-30T08:21:34.274+01:00</published>
    <updated>2010-07-30T08:53:04.836625+01:00</updated>
    <category term=".Net" label=".Net" scheme="http://www.duanewingett.info/CategoryView,category,.Net.aspx" />
    <category term="Mutex" label="Mutex" scheme="http://www.duanewingett.info/CategoryView,category,Mutex.aspx" />
    <category term="Semaphore" label="Semaphore" scheme="http://www.duanewingett.info/CategoryView,category,Semaphore.aspx" />
    <category term="Single Instance" label="Single Instance" scheme="http://www.duanewingett.info/CategoryView,category,Single%2BInstance.aspx" />
    <category term="Terminal Server" label="Terminal Server" scheme="http://www.duanewingett.info/CategoryView,category,Terminal%2BServer.aspx" />
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
VB.Net Single Instance application on Terminal Server 
</p>
        <p>
Yesterday at work I spent nearly the whole day bashing my head against a wall trying
to replicate functionality that our original VB6 application had into the new .Net
conversion. The orginal VB6 application used "<strong>App.PrevInstance</strong>"
to determine if another instance was running or not. This appeared to work for multiple
users on Terminal Servers, so each user could run an instance of the app, but it would
warn if they tried to open another.
</p>
        <p>
VB.Net does not appear to have such direct functionality. Looking on the web provided
various 'solutions' to the problem. However each one seemed to have an 'issue' with
our scenario. By the afternoon I was looking at the <strong>Mutex</strong> objects
which a lot of people seemed to find worked for them. However for me I was getting
an "<span name="subject">Object synchronization method was called from an unsynchronized
block of code</span>" error when closing the second instance onwards.
</p>
        <p>
Looking into the <strong>Mutex</strong> object in a bit more depth it seemed that
maybe it was not the right object for our purpose but maybe the <strong>Semaphore</strong> object
would be better.
</p>
        <p>
In the end the solution I used was to use a named Semaphore. When the application
first instance runs it would attempt to open the named Semaphore and if it did
not exist, assume it was the first instance and create one. The second instance when
run would again look for and open the named Semaphore and if it exists and it manages
to open it then it would assmue it is a second instance of the application.
</p>
        <p>
By prefixing the Semaphorename with "Local\" it will allow each <strong>Terminal Server</strong> session
to have it's own Semaphore so each remote user would not affected by another.
</p>
        <p>
The elements of the code I used are below.
</p>
        <p>
Imports:
</p>
        <pre>
          <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: black; FONT-SIZE: 11px">
            <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Imports</span> System.Threading</span>
        </pre>
        <p>
Declarations:
</p>
        <pre>
          <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: black; FONT-SIZE: 11px">
            <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Private</span> SingleInstanceSemaphore <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">As</span> Semaphore <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Nothing</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: green; FONT-SIZE: 11px">'
This needs to live for the life of the application</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Private</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Const</span> MAX_SESSION_INSTANCES <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">As</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Integer</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span> 1 <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Private</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Const</span> SEMAPHORE_NAME <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">As</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">String</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span><span style="BACKGROUND-COLOR: #e4e4e4; FONT-FAMILY: Courier New; COLOR: #666666; FONT-SIZE: 11px">"{9A49BB2C-45D2-4bb9-B38E-74F9DB612B96}"</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: green; FONT-SIZE: 11px">'
Unique for each application</span></span>
        </pre>
        <p>
Main Method:
</p>
        <pre>
          <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: black; FONT-SIZE: 11px">
            <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: green; FONT-SIZE: 11px">'''
&lt;summary&gt;</span>
            <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: green; FONT-SIZE: 11px">'''
This is the main application entrance point.</span>
            <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: green; FONT-SIZE: 11px">'''
&lt;/summary&gt;</span>
            <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Public</span>
            <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Sub</span> Main() <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: green; FONT-SIZE: 11px">'
We need a name for the semaphore that is specific to to the Application / User combination</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: green; FONT-SIZE: 11px">'
We prefix the semaphoreName with "Local\" to allow this to run under terminal services. </span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: green; FONT-SIZE: 11px">'
The "Local\" prefix forces this into local user space. </span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: green; FONT-SIZE: 11px">'
If we want to forbid this in TS, use the "Global\" prefix.</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Dim</span> semaphorePrefix <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">As</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">String</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span><span style="BACKGROUND-COLOR: #e4e4e4; FONT-FAMILY: Courier New; COLOR: #666666; FONT-SIZE: 11px">"Local"</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: green; FONT-SIZE: 11px">'
Or "Global" if required</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Dim</span> semaphoreName <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">As</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">String</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">String</span>.<span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Format</span>(<span style="BACKGROUND-COLOR: #e4e4e4; FONT-FAMILY: Courier New; COLOR: #666666; FONT-SIZE: 11px">"{0}\{1}{2}"</span>,
semaphorePrefix, SEMAPHORE_NAME, Environment.UserName) <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Dim</span> anotherInstanceRunningForUser <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">As</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Boolean</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">True</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Dim</span> runAnotherDialogResult <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">As</span> DialogResult <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span> DialogResult.No <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Dim</span> mainForm <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">As</span> Form1 <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Nothing</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Try</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Try</span> SingleInstanceSemaphore <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span> Semaphore.OpenExisting(semaphoreName) <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Catch</span> ex <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">As</span> Exception
anotherInstanceRunningForUser <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">False</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">End</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Try</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">If</span> (anotherInstanceRunningForUser <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">False</span>) <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Then</span> SingleInstanceSemaphore <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">New</span> Semaphore(0,
MAX_SESSION_INSTANCES, semaphoreName) <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">End</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">If</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">If</span> (anotherInstanceRunningForUser) <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Then</span> runAnotherDialogResult <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span> MessageBox.Show(<span style="BACKGROUND-COLOR: #e4e4e4; FONT-FAMILY: Courier New; COLOR: #666666; FONT-SIZE: 11px">"Another
instance is already running. Do you want to run another?"</span>, _<br /><span style="BACKGROUND-COLOR: #e4e4e4; FONT-FAMILY: Courier New; COLOR: #666666; FONT-SIZE: 11px">"Already
Running..."</span>, MessageBoxButtons.YesNo, MessageBoxIcon.Question) <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">End</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">If</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: green; FONT-SIZE: 11px">'
If this is the first instance of the application, or a further instance but the user
wants more than one...</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">If</span> (anotherInstanceRunningForUser <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">False</span>) <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">Or</span> _
((anotherInstanceRunningForUser <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">True</span>) <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">And</span> (runAnotherDialogResult <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span> DialogResult.Yes)) <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Then</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: green; FONT-SIZE: 11px">'
Run the application</span> mainForm <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: red; FONT-SIZE: 11px">=</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">New</span> Form1(mutexName)
Application.Run(mainForm) <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">End</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">If</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Catch</span> ex <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">As</span> Exception <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">MsgBox</span>(ex.Message) <span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">End</span><span style="BACKGROUND-COLOR: transparent; FONT-FAMILY: Courier New; COLOR: blue; FONT-SIZE: 11px">Try</span></span>
        </pre>
        <p>
I hope that mayhelp someone in the future and save them a day trawling through the
web sticking examples of code together and getting failed results like I did.
</p>
        <p>
Regards,<br />
Dib.
</p>
        <p>
 
</p>
        <font color="#000000" face="Courier New">
        </font>
        <img width="0" height="0" src="http://www.duanewingett.info/aggbug.ashx?id=3c6c00f1-740c-4bf2-b6ec-3875ad339beb" />
      </div>
    </content>
  </entry>
  <entry>
    <title>Failed to enable constraints. One or more rows contain values violating non-null, unique, or foreign-key constraints.</title>
    <link rel="alternate" type="text/html" href="http://www.duanewingett.info/2010/06/08/FailedToEnableConstraintsOneOrMoreRowsContainValuesViolatingNonnullUniqueOrForeignkeyConstraints.aspx" />
    <id>http://www.duanewingett.info/PermaLink,guid,3dbc6ea6-9e1c-42a5-a075-930d2c9ac0be.aspx</id>
    <published>2010-06-08T19:35:03.273375+01:00</published>
    <updated>2010-06-08T19:41:18.554625+01:00</updated>
    <category term=".Net" label=".Net" scheme="http://www.duanewingett.info/CategoryView,category,.Net.aspx" />
    <category term="Asp.Net" label="Asp.Net" scheme="http://www.duanewingett.info/CategoryView,category,Asp.Net.aspx" />
    <category term="C#" label="C#" scheme="http://www.duanewingett.info/CategoryView,category,C%23.aspx" />
    <category term="Database" label="Database" scheme="http://www.duanewingett.info/CategoryView,category,Database.aspx" />
    <category term="Errors" label="Errors" scheme="http://www.duanewingett.info/CategoryView,category,Errors.aspx" />
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
Today I hit hit this error message while filling a typed DataSet Datatable. The odd
thing was I could preview the data in the DataSet designer and the data looked fine.
</p>
        <p>
I had to resort to Google and that returned this page, which if you hit this error,
I would definately recommend. Look specifically for Sanjeys post about six posts down.
</p>
        <p>
        </p>
        <p>
          <a href="http://weblogs.asp.net/rosherove/archive/2004/10/03/DataSet-hell-_2D00_-_2200_Failed-to-enable-constraints.-One-or-more-rows--contain-values_2E002E002E002E002200_.aspx" target="_blank">Roy
Osherove's Blog - Dataset Hell</a>
        </p>
        <img width="0" height="0" src="http://www.duanewingett.info/aggbug.ashx?id=3dbc6ea6-9e1c-42a5-a075-930d2c9ac0be" />
      </div>
    </content>
  </entry>
  <entry>
    <title>Glass Effect Text without images (HTML and CSS only)</title>
    <link rel="alternate" type="text/html" href="http://www.duanewingett.info/2010/05/27/GlassEffectTextWithoutImagesHTMLAndCSSOnly.aspx" />
    <id>http://www.duanewingett.info/PermaLink,guid,9731df45-ce57-4e25-9559-2002037b7e86.aspx</id>
    <published>2010-05-27T13:17:21.773+01:00</published>
    <updated>2010-05-29T07:02:28.832875+01:00</updated>
    <category term="Asp.Net" label="Asp.Net" scheme="http://www.duanewingett.info/CategoryView,category,Asp.Net.aspx" />
    <category term="CSS" label="CSS" scheme="http://www.duanewingett.info/CategoryView,category,CSS.aspx" />
    <category term="Html" label="Html" scheme="http://www.duanewingett.info/CategoryView,category,Html.aspx" />
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <h1>Glass Effect Text without images (HTML and CSS only)
</h1>
        <p>
As part of the development for a new web site I am working on I ideally need the site
header text to be a glass effect laid over the glass effect headr image. I also want
the header text to be able to be 'read' by search engines.
</p>
        <p>
Although many search engines can read the 'alt' text of an image I belive I am right
in saying the major search engines put more emphasis or weight on plain text. Especially
text in header tags H!, H2 etc.
</p>
        <p>
With this in mind I wanted to create a text only header that also has a glass effect.
</p>
        <p>
One option was to create a text header and then over lay half of the text with a semi
trans parent PNG. This will work visually but will not allow the text to be selected
properly.
</p>
        <p>
So to allow the text to be selected I decided I needed to place one layer of text
on top of another and then cut off the bottom of the top layer of text.
</p>
        <p>
Below is the code I used. 
<br /></p>
        <hr size="2" width="100%" />
        <pre>
          <span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;!DOCTYPE
html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;<br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;</span><span style="color: Maroon; background-color: transparent; font-family: Courier New; font-size: 11px;">html</span><span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">xmlns</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">="http://www.w3.org/1999/xhtml"</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&gt;</span><br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;</span><span style="color: Maroon; background-color: transparent; font-family: Courier New; font-size: 11px;">head</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&gt;</span><br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;/</span><span style="color: Maroon; background-color: transparent; font-family: Courier New; font-size: 11px;">title</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&gt;</span><br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;</span><span style="color: Maroon; background-color: transparent; font-family: Courier New; font-size: 11px;">style</span><span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">type</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">="text/css"</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&gt;</span><br />
div.Glass<br />
{<br />
background-color:#FFF;<br />
background-image:url(http://michaelsync.net/wp-content/uploads/2008/06/silverlight-glass-button.jpg);<br />
background-position:-22px -10px;<br />
background-repeat:no-repeat;<br />
border:solid 1px #FFF;<br />
height:80px;<br />
position:relative;<br />
}<br />
div.Text<br />
{<br />
color:#66F; 
<br />
height:80px;<br />
}<br />
div.Shine<br />
{<br />
color:#99F;<br />
height:39px;<br />
overflow:hidden;<br />
margin-top:-97px;<br />
}<br />
h1<br />
{<br />
margin-top:17px;<br />
}<br /><br />
/* IE7 Specific CSS hack */<br />
* + html div.Shine<br />
{<br />
margin-top:-80px;<br />
} 
<br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;/</span><span style="color: Maroon; background-color: transparent; font-family: Courier New; font-size: 11px;">style</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&gt;</span><br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;/</span><span style="color: Maroon; background-color: transparent; font-family: Courier New; font-size: 11px;">head</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&gt;</span><br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;</span><span style="color: Maroon; background-color: transparent; font-family: Courier New; font-size: 11px;">body</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&gt;</span><br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;</span><span style="color: Maroon; background-color: transparent; font-family: Courier New; font-size: 11px;">form</span><span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">id</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">="form1"</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&gt;</span><br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;</span><span style="color: Maroon; background-color: transparent; font-family: Courier New; font-size: 11px;">div</span><span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">class</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">="Glass"</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&gt;</span><br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;</span><span style="color: Maroon; background-color: transparent; font-family: Courier New; font-size: 11px;">div</span><span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">class</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">="Text"</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&gt;</span></span>
          <span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;h1&gt;<span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;"></span></span>
          <span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px;">Welcome&lt;/h1&gt;<span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;/</span><span style="color: Maroon; background-color: transparent; font-family: Courier New; font-size: 11px;">div</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&gt;</span><br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;</span><span style="color: Maroon; background-color: transparent; font-family: Courier New; font-size: 11px;">div</span><span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">class</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">="Shine"</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&gt;</span></span>
          <span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;h1&gt;<span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;"></span></span>
          <span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px;">
            <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">
            </span>Welcome</span>
          <span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;/h1&gt;<span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;"></span></span>
          <span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px;">
            <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;/</span>
            <span style="color: Maroon; background-color: transparent; font-family: Courier New; font-size: 11px;">div</span>
            <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&gt;</span>
            <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;/</span>
            <span style="color: Maroon; background-color: transparent; font-family: Courier New; font-size: 11px;">div</span>
            <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&gt;</span>
            <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;/</span>
            <span style="color: Maroon; background-color: transparent; font-family: Courier New; font-size: 11px;">form</span>
            <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&gt;</span>
            <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;/</span>
            <span style="color: Maroon; background-color: transparent; font-family: Courier New; font-size: 11px;">body</span>
            <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&gt;</span>
            <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;/</span>
            <span style="color: Maroon; background-color: transparent; font-family: Courier New; font-size: 11px;">html</span>
            <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">&gt;</span>
          </span>
        </pre>
        <br />
        <p>
        </p>
        <img width="0" height="0" src="http://www.duanewingett.info/aggbug.ashx?id=9731df45-ce57-4e25-9559-2002037b7e86" />
      </div>
    </content>
  </entry>
  <entry>
    <title>Coconut If Incontinence website Launched</title>
    <link rel="alternate" type="text/html" href="http://www.duanewingett.info/2010/04/06/CoconutIfIncontinenceWebsiteLaunched.aspx" />
    <id>http://www.duanewingett.info/PermaLink,guid,c106d15a-bb0f-40d1-84a9-bc443c83c2c1.aspx</id>
    <published>2010-04-06T13:36:23.6595+01:00</published>
    <updated>2010-04-06T13:39:55.893875+01:00</updated>
    <category term=".Net" label=".Net" scheme="http://www.duanewingett.info/CategoryView,category,.Net.aspx" />
    <category term="Coconut Of Incontinece" label="Coconut Of Incontinece" scheme="http://www.duanewingett.info/CategoryView,category,Coconut%2BOf%2BIncontinece.aspx" />
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
Since Christmas I have been filling some fo my spare time working on a website for
a game for family and friends that my girlfriend's family play. This has now been
released and can be seen. here:
</p>
        <p>
          <a href="http://www.coi.me.uk/">The Coconut Of Incontinence</a>
        </p>
        <p>
        </p>
        <p>
The site is written in Asp.Net 2.0
</p>
        <img width="0" height="0" src="http://www.duanewingett.info/aggbug.ashx?id=c106d15a-bb0f-40d1-84a9-bc443c83c2c1" />
      </div>
    </content>
  </entry>
  <entry>
    <title>Call of Duty Modern Warfare 2 vs Battlefield Bad Company 2</title>
    <link rel="alternate" type="text/html" href="http://www.duanewingett.info/2010/03/25/CallOfDutyModernWarfare2VsBattlefieldBadCompany2.aspx" />
    <id>http://www.duanewingett.info/PermaLink,guid,158e2071-ae44-4641-930e-374115fa62c5.aspx</id>
    <published>2010-03-25T13:29:21.881+00:00</published>
    <updated>2010-03-25T13:58:18.3520711+00:00</updated>
    <category term="Battlefield bad Company 2" label="Battlefield bad Company 2" scheme="http://www.duanewingett.info/CategoryView,category,Battlefield%2Bbad%2BCompany%2B2.aspx" />
    <category term="Modern Warfare" label="Modern Warfare" scheme="http://www.duanewingett.info/CategoryView,category,Modern%2BWarfare.aspx" />
    <category term="PC Gaming" label="PC Gaming" scheme="http://www.duanewingett.info/CategoryView,category,PC%2BGaming.aspx" />
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <h1>Call of Duty Modern Warfare 2 vs Battlefield Bad Company 2
</h1>
        <p>
I have recently purchased both games and will use this space to write a little review
of how I feel they stack up against each other.
</p>
        <h2>Single Player Capaign Mode
</h2>
        <h3>MW2
</h3>
        <b>Good</b>
        <br />
- A good plot which keeps you interested<br /><br /><b>Bad</b><br />
- The capaign game was over far too soon. It could have done with a bit longer. I
expect hardcore out of work players or children in holidays would complete on the
day of purchase.<br /><h3>BC2
</h3><b>Good</b><br />
- almost fully destructable landscape. Alot of buldings can be destroyed, however
not all.<br /><b>Bad</b><br />
- Plot seems weak so far as I haven't completed it yet<br />
- Far too many cut scenes. sometimes you have only just run a hundred yards and oops,
here we go.. another cut scene. It breaks up the gaming flow far too much.<br /><h2>Multiplayer Online
</h2><h3>MW2
</h3>
- Selectable perks allow you to tweak the "skills" of your soldier to suit your needs.<br /><h3>BC2
</h3><b>Good</b> - i'm loving the Recon class's calling in of mortars. very useful tool. <b>Bad</b> -
I found the basic guns difficult to get on with. - Medics can't Heal or revive until
they learned their skills! 
<h2>General
</h2><h3>MW2
</h3><h3>BC2
</h3><b>Good</b><br />
- Landscapes are wide and open<br />
- Bullets drop over distance<br /><br /><br /><b>Bad<br /></b>- Too much swearing. There is a lot of pointless swearing in the whole game, multiplayer
and single player. This is not by other players but by the Non Player Characters.
I wouldn't want any of my children under 13 playing the game.<br />
-PC version crashes quite a lot.<br /><p>
To be continued... I will add more as I go along.
</p><p>
Please feel free to comment!
</p><img width="0" height="0" src="http://www.duanewingett.info/aggbug.ashx?id=158e2071-ae44-4641-930e-374115fa62c5" /></div>
    </content>
  </entry>
  <entry>
    <title>UK Car Scrappage Scheme</title>
    <link rel="alternate" type="text/html" href="http://www.duanewingett.info/2009/05/01/UKCarScrappageScheme.aspx" />
    <id>http://www.duanewingett.info/PermaLink,guid,f7908a3f-bcd2-4591-96ca-1c5127e08ccc.aspx</id>
    <published>2009-05-01T06:43:58.516875+01:00</published>
    <updated>2009-05-01T06:56:42.860625+01:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
In the Budget on April 22<sup>nd</sup> the Government announced plans to introduce
a Car Scrappage scheme in the UK, starting from<br />
May 18<sup>th</sup> 2009.
</p>
        <p>
Under the terms of the Scrappage scheme, the Government fund a discount of £2,000
off the purchase price of a new car or van for customers who trade in cars that they
have owned for at least twelve months and are at least 10 years old.
</p>
        <p>
Do the rich politicians actually know why people like myself own and drive around
in 10 year old plus bangers bought for about £500? Not because we prefer driving one
to a nice shiney new car, but because we can't afford to go and buy a new car. I'm
sure many who drive round in old bangers like me, can't even afford to buy a
car of £2000, let alone buy one for £10K with £2K knocked off if they have it
scrapped at the same time. Does the government live in a dream world? Do these rich
fat cats realise how much disposable income most of us DO NOT actually have? Clearly
not.
</p>
        <p>
What is more, in these days of recycling and the urge not to be wasteful of resources,
surely it is better to try and keep using an object, that cost thousands of pounds
to produce and countless irrreplacable resources to produce, for as long as possible.
Not replace it with a brand new object that cost even more thousands and more of the
planet's resources?
</p>
        <p>
Am I right, or have I missed the point completely?
</p>
        <img width="0" height="0" src="http://www.duanewingett.info/aggbug.ashx?id=f7908a3f-bcd2-4591-96ca-1c5127e08ccc" />
      </div>
    </content>
  </entry>
  <entry>
    <title>Guess RB1 Road Bike</title>
    <link rel="alternate" type="text/html" href="http://www.duanewingett.info/2009/04/22/GuessRB1RoadBike.aspx" />
    <id>http://www.duanewingett.info/PermaLink,guid,06a16963-c0fe-459f-b200-db41d8e8792b.aspx</id>
    <published>2009-04-22T07:38:54.117+01:00</published>
    <updated>2009-05-04T09:12:06.143+01:00</updated>
    <category term="Bikes" label="Bikes" scheme="http://www.duanewingett.info/CategoryView,category,Bikes.aspx" />
    <category term="Cycling" label="Cycling" scheme="http://www.duanewingett.info/CategoryView,category,Cycling.aspx" />
    <category term="Guess RB1" label="Guess RB1" scheme="http://www.duanewingett.info/CategoryView,category,Guess%2BRB1.aspx" />
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <h1>Guess RB1
</h1>
        <p>
When I came to research the <em>Guess RB1 </em>before purchasing it, I could find
very little information about it on the web. Therefore I thought I would collate everything
I know or can find in one place, so if anyone else wants to know about these wonderful
little bikes they can hopefully find most of it here.<br />
 
</p>
        <p>
          <img alt="Guess RB1" src="http://www.duanewingett.info/content/binary/GuessRB1_01_Vsml.jpg" border="0" />
        </p>
        <h3>Background
</h3>
        <p>
Guess is <em>SuperCycles</em> of Nottingham’s own brand of bike. Up until December
2002 it was only available as a frame, however after that <em>SuperCycles</em> started
to release it as a complete bike.
</p>
        <h3>Awards
</h3>
        <p>
          <em>Cycling Plus </em>gave it “Best-Of-Test” in a review.<br />
The British Bicycle Awards gave it “Best Value Road Bike”
</p>
        <h3>Frame
</h3>
        <p>
The <em>Guess RB1 </em>frame is constructed from 6061 Aluminium. The top tube, down
tube and seat tube are wing-shaped for aerodynamics. The seat and chain stays are
ovaloid, with the chain stays having dog legs for crank clearance. All of the tubes
are fused together with big chunky welds, similar to my mountain bike. The frame has
solid rear drop outs
</p>
        <p>
The seat tube features quite a large cut out for the rear wheel, however, the tyre
barely comes close the the tube. I don't understand why such a large cut out has been
designed into the frame. Maybe it is to reduce drag of air over the rear wheel. Can
anyone shed some light on this?
</p>
        <p>
The head tube suitable for is 1 1/8" diameter steerer forks.
</p>
        <p>
The frame comes in the following sizes: 25, 54, 56, 58 cm. Mine is the 58 cm Model.
I’m 5’10 and it is comfortable to ride, but I think if I was to buy from new I’d choose
a 56 or 54cm frame and have a longer seat post and a more aero dynamic position.<br /></p>
        <h3>Forks
</h3>
        <p>
The forks are constructed of carbon with an aluminium alloy steerer tube. They are
of a blade design for aero dynamics and feature a 5cm rake. The steerer tube is 1
1/8" with Ahead fitting. According to <em>SuperCycles</em> website these forks have
received the <em>Cycling Plus Gold Award </em>for being truely aerodynamic.
</p>
        <h3>Wheels
</h3>
        <p>
The wheels on my bike are not what originally came with the bike, these would have
been <em>Guess</em> hubs tied to <em>American Classic</em> rims. According to the
shop owner the original owner had upgraded from the original wheels to the <i>Capagnolo
Scirocco G3 </i>wheels.
</p>
        <p>
According to <a href="http://www.roadcyclinguk.com/review/reviewProduct/mps/rpn/15470/prod/Campagnolo-Scirocco-/rcn/140/rgn/11/sp//v/1">roadcyclinguk.com</a> -
The Scirocco G3 wheels were made to be exceptional value for money but provide top
end technical features. 30mm black-satin rims. Oversized hubs and G3 spoking front
and rear. Weight 790g front, 1040g rear  (Or 770g front, and 955g rear on the
Capagnolo website) They retail at around £220.
</p>
        <h3>Tyres
</h3>
        <p>
I'm not sure what tyre come on this bike from new, but the previous woner has equiped
the bike with... tbc<br /></p>
        <h3>Brakes
</h3>
        <p>
The brake Calipers are made by Guess, and look like a cross between Tektro and Shimano.
If any one has any more information on the calipers, please provide. I am unsure what
the brake blocks are, or who they are nade from. I haven't had to emergncy brake yet,
or brake on a sustained down hill, so I cannot comment on their performance.<br /></p>
        <h3>Brake Levers and Shifters
</h3>
The eight speed shifters and brake levers are Shimano Sora.<br /><h3>Handles Bars
</h3><p>
The handle bars are Guess's own aluminium creation. I currently have Outland aluminium
clip-on Tri Bars fitted to them<br /></p><h3>Stem
</h3><p>
The stem is Guess's own, made from an aluminium alloy.<br /></p><h3>Seat Post
</h3>
The seat post is made of Aluminium Alloy by Guess.<br /><h3>Seat
</h3><p>
The seat is Guess's own. It has hollow Chrome-Moly rails.<br /></p><h3>The Ride
</h3><p>
I may not be the best person to review how the bike is to ride as for the last twenty
years or so I have been riding mountain bikes only. To me the bike feels extremely
light and responsive. Due to the weight, excelleration is a doddle, and I'm sure a
fitter person than I would find it a pleasure to climb with. I haven't cornered hard
with it yet, as I need to learn to trust the tyres, but the bike feels nimble and
seems to return to an upright position easily.<br /></p><h3>Comments
</h3><p>
Please feel free to comment. If you have any further information that you can add
about this brilliant budget bike, please do. I would love to hear from fellow RB1
(Or RB2) owners, and hear of their experiences, good or bad.<br /></p><h3>Links
</h3><p>
Full bike reviews<br /><a href="http://www.roadcyclinguk.com/forum/forummessages/mps/utn/106070/v/1/cp/1/">http://www.roadcyclinguk.com/forum/forummessages/mps/utn/106070/v/1/cp/1/</a><br /><a href="http://www.bikemagic.com/forum/forummessages/mps/dt/4/UTN/46381/srchdte/0/last/1/V/6/SP/328890336794364665472">http://www.bikemagic.com/forum/forummessages/mps/dt/4/UTN/46381/srchdte/0/last/1/V/6/SP/328890336794364665472</a><br /><a href="http://forum.220magazine.com/tm.asp?m=29192">http://forum.220magazine.com/tm.asp?m=29192</a><br /><a href="http://www.bikemagic.com/forum/forummessages/mps/dt/4/UTN/50389/">http://www.bikemagic.com/forum/forummessages/mps/dt/4/UTN/50389/</a><br /><br /><a href="http://www.beginnertriathlete.com/gear/gear.asp?pid=311">http://www.beginnertriathlete.com/gear/gear.asp?pid=311</a><br /></p>
Capagnolo Scirocco G3 Wheel Review:<br /><a href="http://www.roadcyclinguk.com/review/reviewProduct/mps/rpn/15470/prod/Campagnolo-Scirocco-/rcn/140/rgn/11/sp//v/1">http://www.roadcyclinguk.com/review/reviewProduct/mps/rpn/15470/prod/Campagnolo-Scirocco-/rcn/140/rgn/11/sp//v/1</a><br /><br /><b>Supplier of new RB1s:</b><br />
SuperCycles - <a href="http://www.supercycles.co.uk/">http://www.supercycles.co.uk/</a><br /><img width="0" height="0" src="http://www.duanewingett.info/aggbug.ashx?id=06a16963-c0fe-459f-b200-db41d8e8792b" /></div>
    </content>
  </entry>
  <entry>
    <title>Burned Off By A Flaty!</title>
    <link rel="alternate" type="text/html" href="http://www.duanewingett.info/2009/04/21/BurnedOffByAFlaty.aspx" />
    <id>http://www.duanewingett.info/PermaLink,guid,52ce1df5-787d-4753-8409-9fa812b29710.aspx</id>
    <published>2009-04-21T19:21:39.492+01:00</published>
    <updated>2009-04-21T20:17:57.7273738+01:00</updated>
    <category term="Bikes" label="Bikes" scheme="http://www.duanewingett.info/CategoryView,category,Bikes.aspx" />
    <category term="Cycling" label="Cycling" scheme="http://www.duanewingett.info/CategoryView,category,Cycling.aspx" />
    <category term="Guess RB1" label="Guess RB1" scheme="http://www.duanewingett.info/CategoryView,category,Guess%2BRB1.aspx" />
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <h3>Hill Work
</h3>
        <p>
As I didn't get a chance to get out on the Guess RB1 for my normal 8 mile
ride before work this morning, I thought I ought to get out on it for a quick ride
tonight. My 8 mile morning ride is pretty flat, so I thought I'd incorporate Lanehouse
hill and New Road on Portland for a bit of hill work. Lanehouse wasn't too bad,
I think I didn't go lower than second but New Road is always a bit of a
killer, and wasn't looking forward to that.
</p>
        <h3>The Flat Bar Bike Bloke
</h3>
        <p>
On my way accross the beach road as I passed the location of the old oil tanks I passed
a chap on a flat bar bike. I didn't rally think much of it, as he seemed to be cruising.
I carried on my way round Vicky Square and up the zig zag into Fortunes Well. As I
reached the shops I could hear the sound of a deraileur change behind me. I could
hear the cyclist behind was keeping right up behind me, so I kept my pace slight as
high as I thought I could maintain.
</p>
        <h3>Burned Off
</h3>
        <p>
Sadly it appeared it was too hight at first as I virtually died at the ninety right
at the bottom of New Road, and had to rrsort to first and second. At this point the
flat bar bike bloke stood up on the pedals and rode round me, pumping all the way
up the hill, dropping me like I was stood still. What is more he was half way down
the sprocket to boot! I didn't even attempt to keep up, my legs were shot. When
I rounded the hairpin he was no where to be seen, neither was he when I reached the
roundabout at Dowsett's old garage. one thing for sure his legs were a lot bigger
than mine, but not suprising if he climbs like that every day!
</p>
        <img width="0" height="0" src="http://www.duanewingett.info/aggbug.ashx?id=52ce1df5-787d-4753-8409-9fa812b29710" />
      </div>
    </content>
  </entry>
  <entry>
    <title>Back on the road...</title>
    <link rel="alternate" type="text/html" href="http://www.duanewingett.info/2009/04/20/BackOnTheRoad.aspx" />
    <id>http://www.duanewingett.info/PermaLink,guid,e22a9840-e35c-4135-8ad1-4dee4077173c.aspx</id>
    <published>2009-04-20T18:38:12.008+01:00</published>
    <updated>2009-04-21T19:46:52.8211238+01:00</updated>
    <category term="Bikes" label="Bikes" scheme="http://www.duanewingett.info/CategoryView,category,Bikes.aspx" />
    <category term="Cycling" label="Cycling" scheme="http://www.duanewingett.info/CategoryView,category,Cycling.aspx" />
    <category term="Guess RB1" label="Guess RB1" scheme="http://www.duanewingett.info/CategoryView,category,Guess%2BRB1.aspx" />
    <content type="html">&lt;h3&gt;Back on the road...
&lt;/h3&gt;
&lt;p&gt;
Although I haven’t been without a bike of some time since about the age of five, I
haven’t had a road bike for well over 15 years. Although I currently have a full suspension
XC mountain bike, I have been mulling over getting a road bike for a couple of years.
Recently I made the decision to get one.
&lt;/p&gt;
&lt;p&gt;
I started researching what sort of machine I could get second hand off eBay, and started
watching bikes listed locally, or with a postage option. I could see that for anything
from £200-£300, my budget, I could get an aluminium frame maybe with carbon forks
and some other carbon components.
&lt;/p&gt;
&lt;p&gt;
I missed out on a few machines going on eBay for various reasons, but while I was
bidding on one, I thought I ought to pick the brains of the local bike shop proprietors,
and see if they ever get trade-ins. The chap at one of the local shops (&lt;a href="http://www.westhamcycles.com/"&gt;Westham
cycles&lt;/a&gt;) was very informative, but did recommend to leave second hand bikes alone
as they have a huge waiting list for second hand road bikes. He suggested that I save
up for the new 2009 GT GTR series 4 that would be due in at the start of May. Save
up? I wanted one there and then, he-he!
&lt;/p&gt;
&lt;p&gt;
I went to the next shop, Cycle Life, expecting to hear pretty much the same thing
about second hand bikes, but he suggested I take a look at a matte black beast of
a bike in the front of the shop. I’d never heard of the make “Guess” before. I wondered
if it stood for “Guess who really makes it?” This is something I have yet to find!
He advised me that he was selling it for a friend who wanted £450 for it, this was
quite a bit over my budget.
&lt;/p&gt;
&lt;p&gt;
As I tried it for size, he told me a fair bit about it, including that it had up-rated
Campagnolo Scirocco wheels. I have since found them listed new for about £250; half
the price the bike&amp;nbsp;would be if new. I asked if it would be a good base to start
from, if I wanted to upgrade to better components later on. He suggested it would
be, as it was a good frame and forks setup.
&lt;/p&gt;
&lt;p&gt;
I went home to mull it over and discuss it with my girlfriend. I would have to put
it on the credit card, but I had done a little website work, so was due some money
in my account soon. She said do a bit of research first, but if after that I still
want it, why not get it. After all, life is too short. I couldn’t find much about
it on the web. Only that &lt;a href="http://www.supercycles.co.uk/"&gt;SuperCycles&lt;/a&gt; seem
to be the only place that stocks it. I had read a couple of accounts from people who
owned one, and all but one was positive. The negative one only complained about the
standard wheels, and as this one had up-rated Campagnolos wheels already on it, I
didn't need to worry about that.
&lt;/p&gt;
&lt;p&gt;
I decided to go back to the shop and make an offer. The first was rejected but we
came to agreement on the second offer. After the bike was given a good once over by
the shop owner,&amp;nbsp;I was now once more the owner of a road bike!
&lt;/p&gt;
&lt;p&gt;
I'll detail and review the bike in a seperate article coming soon.
&lt;/p&gt;
&lt;p&gt;
&lt;img alt="Guess RB1" src="http://www.duanewingett.info/content/binary/GuessRB1_01_Vsml.jpg" border=0&gt;
&lt;/p&gt;
&lt;h3&gt;Cycle Shops
&lt;/h3&gt;
&lt;h4&gt;Cycle Life
&lt;/h4&gt;
&lt;p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;&lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;
&lt;st1:address w:st="on"&gt;
&lt;font color=#000000&gt;
&lt;st1:Street w:st="on"&gt;28 Abbotsbury Rd&lt;/st1:Street&gt;
,&lt;/font&gt;
&lt;/st1:address&gt;
&lt;/p&gt;
&lt;p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;
&lt;st1:address w:st="on"&gt;
&lt;font color=#000000&gt;
&lt;st1:City w:st="on"&gt;Weymouth&lt;/st1:City&gt;
,&lt;/font&gt;
&lt;/st1:address&gt;
&lt;/p&gt;
&lt;p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;
&lt;st1:address w:st="on"&gt;
&lt;font color=#000000&gt;
&lt;st1:PostalCode w:st="on"&gt;DT4 0AE&lt;/st1:PostalCode&gt;
&lt;/font&gt;
&lt;/st1:address&gt;
&lt;/p&gt;
&lt;p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;
&lt;st1:address w:st="on"&gt;
&lt;font color=#000000&gt;
&lt;st1:PostalCode w:st="on"&gt;
&lt;span class=value&gt;01305 781831&lt;/span&gt;
&lt;/st1:PostalCode&gt;
&lt;/font&gt;
&lt;/st1:address&gt;
&lt;/p&gt;
&lt;p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;
&lt;st1:address w:st="on"&gt;
&lt;font color=#000000&gt;
&lt;st1:PostalCode w:st="on"&gt;
&lt;span class=value&gt;[&lt;em&gt;Link to follow&lt;/em&gt;]&lt;/span&gt;
&lt;/st1:PostalCode&gt;
&lt;/font&gt;
&lt;/st1:address&gt;
&lt;/p&gt;
&lt;h4&gt;&amp;nbsp;
&lt;/h4&gt;
&lt;h4&gt;Westham Cycles
&lt;/h4&gt;
&lt;p&gt;
&lt;font color=#000000&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-GB; mso-fareast-language: EN-GB; mso-bidi-language: AR-SA"&gt;&lt;font face=Verdana size=2&gt;128
Abbotsbury Rd&lt;/font&gt;&lt;/span&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-GB; mso-fareast-language: EN-GB; mso-bidi-language: AR-SA"&gt;&lt;font face=Verdana size=2&gt;,&lt;br&gt;
&lt;st1:City w:st="on"&gt;Weymouth&lt;/st1:City&gt;
,&lt;br&gt;
&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&lt;font color=#000000&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN-GB; mso-fareast-language: EN-GB; mso-bidi-language: AR-SA"&gt;
&lt;st1:PostalCode w:st="on"&gt;
&lt;font face=Verdana size=2&gt;DT4 0JS&lt;br&gt;
&lt;b&gt;01305 776977&lt;/b&gt;
&lt;br&gt;
&lt;/font&gt;&lt;a href="http://www.westhamcycles.com/"&gt;&lt;font face=Verdana size=2&gt;http://www.westhamcycles.com/&lt;/font&gt;&lt;/a&gt;
&lt;/p&gt;
&gt;
&gt;&gt; 
&lt;h4&gt;&amp;nbsp;
&lt;/h4&gt;
&lt;h4&gt;Super Cycles
&lt;/h4&gt;
&lt;p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"&gt;
&lt;a href="http://www.supercycles.co.uk/"&gt;http://www.supercycles.co.uk/&lt;/a&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.duanewingett.info/aggbug.ashx?id=e22a9840-e35c-4135-8ad1-4dee4077173c" /&gt;</content>
  </entry>
</feed>