ROAR!
I think i have Cracked it!
Not sure, why your code was not working
However, i (after having a while to think about it)
Came up with this:

vb Code:
  1. FirstRuncheck
In the Form_load

vb Code:
  1. Public Sub FirstRuncheck()
  2.  
  3. Dim strRanbefore As String
  4.         On Error GoTo GetError
  5.        strRanbefore = GetSetting("Pr0xytool", "FirstRun", "RunFlag", "0")
  6.            If strRanbefore = 0 Then
  7.            On Error GoTo SaveError
  8.         SaveSetting "Pr0xytool", "FirstRun", "RunFlag", "1"
  9.            SaveSetting "Pr0xytool", "Settings", "ProxyServer", txtProxyAddress.Text
  10.            End If
  11.            Exit Sub
  12. GetError:
  13.           MsgBox ("Error checking if program has ran before")
  14.            Exit Sub
  15. SaveError:
  16.         MsgBox ("Error Saving Firstrun status")
  17.            Exit Sub
  18.            End Sub

I think that works perfecly! (Ill let you decide weather(ffs, i never know how to spell the other 'weather' properly ><) :P

However, when i come to restore the code - it doesnt work...
I've tried to think about it..but i cannot...my brain has had enough for today
Stupid
NRZI and manchester Encoding ARRRRRRRRRRRRRRRRR
Stupid college!

this is my code
vb Code:
  1. Private Sub menuRestore_Click()
  2. txtProxyAddress = GetSetting("Pr0xytool", "Settings", "Proxyserver")
  3. End Sub

I know its something to do with the 'txtproxyaddress' part - but i cant thinkwhat to put there, i cant put 'ProxyServer' Becuase that is a const value
so im all bummed out