<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Source Code VB</title>
	<atom:link href="http://programmervb.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://programmervb.wordpress.com</link>
	<description>Source Code VB and Tutorial</description>
	<lastBuildDate>Sun, 01 Apr 2012 11:14:01 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='programmervb.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Source Code VB</title>
		<link>http://programmervb.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://programmervb.wordpress.com/osd.xml" title="Source Code VB" />
	<atom:link rel='hub' href='http://programmervb.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Hanoi Tower</title>
		<link>http://programmervb.wordpress.com/2011/09/28/hanoi-tower/</link>
		<comments>http://programmervb.wordpress.com/2011/09/28/hanoi-tower/#comments</comments>
		<pubDate>Wed, 28 Sep 2011 10:50:58 +0000</pubDate>
		<dc:creator>programmervb</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Game]]></category>

		<guid isPermaLink="false">http://programmervb.wordpress.com/?p=525</guid>
		<description><![CDATA[Option Explicit Dim intDiskToPole() As Integer Dim intToPtr As Integer Dim intDiskFromPole() As Integer Dim intFromPtr As Integer Dim intDiskUsingPole() As Integer Dim intUsingPtr As Integer Dim Line1() As Line Dim NODisks As Integer Dim txtRules As String Dim StopHere As Boolean &#8216;Main Recursive Logic for solving Tower Of Hanoi Private Sub SolveHanoi(strFrom As String, &#8230; <a href="http://programmervb.wordpress.com/2011/09/28/hanoi-tower/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=525&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Option Explicit<br />
Dim intDiskToPole() As Integer<br />
Dim intToPtr As Integer<br />
Dim intDiskFromPole() As Integer<br />
Dim intFromPtr As Integer<br />
Dim intDiskUsingPole() As Integer<br />
Dim intUsingPtr As Integer<br />
Dim Line1() As Line<br />
Dim NODisks As Integer<br />
Dim txtRules As String<br />
Dim StopHere As Boolean</p>
<p>&#8216;Main Recursive Logic for solving Tower Of Hanoi<br />
Private Sub SolveHanoi(strFrom As String, strTO As String, strUsing As String, NOD As Integer)<br />
    If StopHere Then Exit Sub<br />
    If NOD &gt; 0 Then<br />
        SolveHanoi strFrom, strUsing, strTO, NOD &#8211; 1    &#8216;Step 1<br />
        If StopHere Then Exit Sub<br />
        txtOutput.Text = txtOutput.Text &amp; vbCrLf &amp; &#8220;Disk &#8221; &amp; NOD &amp; &#8221; Moved From &#8221; &amp; strFrom &amp; &#8221; To &#8221; &amp; strTO<br />
        If StopHere Then Exit Sub<br />
        Select Case strFrom                             &#8216;Step 2<br />
            Case &#8220;Left&#8221;:<br />
                    ShowTransition strFrom, strTO, strUsing, intDiskFromPole(intFromPtr)<br />
            Case &#8220;Right&#8221;:<br />
                    ShowTransition strFrom, strTO, strUsing, intDiskToPole(intToPtr)<br />
            Case &#8220;Middle&#8221;:<br />
                    ShowTransition strFrom, strTO, strUsing, intDiskUsingPole(intUsingPtr)<br />
        End Select<br />
        If StopHere Then Exit Sub<br />
        If optStandard.Value Then<br />
            AddDelay<br />
        ElseIf optDynamic.Value Then<br />
            Pause 1 / NODisks<br />
        End If<br />
        If StopHere Then Exit Sub<br />
        SolveHanoi strUsing, strTO, strFrom, NOD &#8211; 1    &#8216;Step 3<br />
    End If<br />
End Sub</p>
<p>&#8216;Delay Loop<br />
Private Sub AddDelay()<br />
    Dim i As Integer<br />
    Dim j As Integer</p>
<p>    For i = 0 To 800<br />
        For j = 0 To 800<br />
            DoEvents<br />
        Next j<br />
    Next i<br />
End Sub</p>
<p>&#8216;Here Transitions are shown<br />
Private Sub ShowTransition(strFrom As String, strTO As String, strUsing As String, NOD As Integer)<br />
    Dim i As Integer<br />
    Dim DiskNO As Integer</p>
<p>    DiskNO = NOD<br />
    For i = 1 To NODisks<br />
        Line1(i).Visible = False<br />
    Next<br />
    AdjustNOD strFrom, -1, DiskNO<br />
    AdjustNOD strTO, 1, DiskNO<br />
    ShowDisks<br />
End Sub</p>
<p>&#8216;Refresh all componnets for net session of Hanoi solving<br />
Private Sub RemoveAllObjects()<br />
   On Error GoTo EndHere<br />
   Dim i As Integer<br />
   For i = 1 To NODisks<br />
       Controls.Remove (&#8220;Lin&#8221; &amp; (i + 1))<br />
   Next i<br />
EndHere:<br />
End Sub</p>
<p>&#8216;Adjust individual Stacks correspoding to each pole<br />
Private Sub AdjustNOD(strPole As String, AddRemove As Integer, DiskValue As Integer)<br />
    If AddRemove = -1 Then<br />
        Select Case strPole<br />
            Case &#8220;Left&#8221;:<br />
                        intDiskFromPole(intFromPtr) = 0<br />
                        intFromPtr = intFromPtr &#8211; 1<br />
            Case &#8220;Right&#8221;:<br />
                        intDiskToPole(intToPtr) = 0<br />
                        intToPtr = intToPtr &#8211; 1<br />
            Case &#8220;Middle&#8221;:<br />
                        intDiskUsingPole(intUsingPtr) = 0<br />
                        intUsingPtr = intUsingPtr &#8211; 1<br />
        End Select<br />
    ElseIf AddRemove = 1 Then<br />
        Select Case strPole<br />
            Case &#8220;Left&#8221;:<br />
                        intFromPtr = intFromPtr + 1<br />
                        intDiskFromPole(intFromPtr) = DiskValue<br />
            Case &#8220;Right&#8221;:<br />
                        intToPtr = intToPtr + 1<br />
                        intDiskToPole(intToPtr) = DiskValue<br />
            Case &#8220;Middle&#8221;:<br />
                        intUsingPtr = intUsingPtr + 1<br />
                        intDiskUsingPole(intUsingPtr) = DiskValue<br />
        End Select<br />
    End If<br />
End Sub</p>
<p>&#8216;Print Current Stacks<br />
Private Sub ShowDisks()<br />
    Dim i As Integer</p>
<p>   &#8216;     In Case &#8220;Left&#8221;:<br />
                For i = 1 To intFromPtr<br />
                    Line1(intDiskFromPole(i)).X1 = 240 + 150 * intDiskFromPole(i)<br />
                    Line1(intDiskFromPole(i)).Y1 = 5160 &#8211; 200 * i<br />
                    Line1(intDiskFromPole(i)).X2 = 2880 + 240 &#8211; 150 * intDiskFromPole(i)<br />
                    Line1(intDiskFromPole(i)).Y2 = 5160 &#8211; 200 * i<br />
                    Line1(intDiskFromPole(i)).Visible = True<br />
                Next<br />
    &#8216;    In Case &#8220;Right&#8221;:<br />
                For i = 1 To intToPtr<br />
                    Line1(intDiskToPole(i)).X1 = 6220 + 150 * intDiskToPole(i)<br />
                    Line1(intDiskToPole(i)).Y1 = 5160 &#8211; 200 * i<br />
                    Line1(intDiskToPole(i)).X2 = 2880 + 6220 &#8211; 150 * intDiskToPole(i)<br />
                    Line1(intDiskToPole(i)).Y2 = 5160 &#8211; 200 * i<br />
                    Line1(intDiskToPole(i)).Visible = True<br />
                Next<br />
     &#8216;   In Case &#8220;Middle&#8221;:<br />
                For i = 1 To intUsingPtr<br />
                    Line1(intDiskUsingPole(i)).X1 = 3200 + 150 * (intDiskUsingPole(i))<br />
                    Line1(intDiskUsingPole(i)).Y1 = 5160 &#8211; 200 * i<br />
                    Line1(intDiskUsingPole(i)).X2 = 2880 + 3200 &#8211; 150 * (intDiskUsingPole(i))<br />
                    Line1(intDiskUsingPole(i)).Y2 = 5160 &#8211; 200 * i<br />
                    Line1(intDiskUsingPole(i)).Visible = True<br />
                Next<br />
End Sub</p>
<p>&#8216;On Solve Click do this &#8230;&#8230;.<br />
Private Sub cmdSolve_Click()<br />
On Error GoTo ErrorHandler<br />
        NODisks = CInt(lstValues.Text)</p>
<p>        ReDim Line1(NODisks) As Line</p>
<p>        ReDim intDiskToPole(NODisks) As Integer<br />
        ReDim intDiskFromPole(NODisks) As Integer<br />
        ReDim intDiskUsingPole(NODisks) As Integer</p>
<p>        Dim i As Integer</p>
<p>        Label3.Caption = &#8220;S O L V I N G &#8230;&#8221;</p>
<p>        txtOutput.Text = &#8220;&#8221;</p>
<p>        For i = 1 To NODisks<br />
            intDiskFromPole(i) = i<br />
            Set Line1(i) = Controls.Add(&#8220;vb.line&#8221;, &#8220;Lin&#8221; &amp; (i + 1))<br />
            Line1(i).BorderStyle = 6<br />
            Line1(i).BorderWidth = 10<br />
            Line1(i).BorderColor = &amp;HC0FFFF + Hex(i) * 50<br />
        Next</p>
<p>        intFromPtr = NODisks<br />
        intToPtr = 0<br />
        intUsingPtr = 0</p>
<p>        For i = 1 To intFromPtr<br />
            Line1(intDiskFromPole(i)).X1 = 240 + 150 * (intDiskFromPole(i))<br />
            Line1(intDiskFromPole(i)).Y1 = 5160 &#8211; 200 * i<br />
            Line1(intDiskFromPole(i)).X2 = 2880 &#8211; 150 * (intDiskFromPole(i))<br />
            Line1(intDiskFromPole(i)).Y2 = 5160 &#8211; 200 * i<br />
            Line1(intDiskFromPole(i)).Visible = True<br />
        Next<br />
        &#8216;If NODisks &gt;= 1 And NODisks &lt;= 9 Then<br />
            If MsgBox(&quot;Press Yes To Solve Tower Of Hanoi &#8230;&#8230;&quot;, vbYesNo) = vbYes Then<br />
                MousePointer = vbHourglass<br />
                SolveHanoi &quot;Left&quot;, &quot;Right&quot;, &quot;Middle&quot;, NODisks<br />
                If Not StopHere Then<br />
                    MousePointer = vbNormal<br />
                    MsgBox &quot;DONE!&quot;<br />
                End If<br />
            End If<br />
            If Not StopHere Then<br />
                RemoveAllObjects<br />
                Label3.Caption = txtRules<br />
                &#039;txtInput.Text = &quot;&quot;<br />
            End If<br />
        &#039;End If<br />
        Exit Sub<br />
ErrorHandler:<br />
    If Err.Number = 13 Or Err.Number = 9 Then<br />
        MsgBox &quot;Please Select a proper numeric value.&quot;, vbCritical, &quot;TOH Error&quot;<br />
        RemoveAllObjects<br />
        Label3.Caption = txtRules<br />
        &#039;txtInput.Text = &quot;&quot;<br />
    End If<br />
End Sub</p>
<p>Private Sub Form_Load()<br />
    StopHere = False<br />
    Label3.Caption = &quot;* * * * * * * *      R U L E S   F O R   T O W E R   O F   H A N O I     * * * * * * * &quot; &amp; vbCrLf &amp; vbCrLf &amp; vbCrLf<br />
    Label3.Caption = Label3.Caption &amp; &quot;A B O U T   S O L V E R &#8230; &quot; &amp; vbCrLf &amp; vbCrLf<br />
    Label3.Caption = Label3.Caption &amp; &quot;This game has 3 poles FROM, TO and USING. There are  N  no of Disks in the  FROM  pole that has to be moved to the  TO  pole by using the  USING  Pole&quot; &amp; vbCrLf<br />
    Label3.Caption = Label3.Caption &amp; &quot;In any move of the game, a given pole has to have a Larger Disk under a Smaller Disk but not vice versa&quot; &amp; vbCrLf<br />
    Label3.Caption = Label3.Caption &amp; &quot;This Solver Solves the problem in minimum possible number of transitions&quot; &amp; vbCrLf &amp; vbCrLf<br />
    Label3.Caption = Label3.Caption &amp; &quot;P L A Y I N G   T H E   S O L V E R &#8230; &quot; &amp; vbCrLf &amp; vbCrLf<br />
    Label3.Caption = Label3.Caption &amp; &quot;1.  The Number Of disks has to be between 1 to 9&quot; &amp; vbCrLf<br />
    Label3.Caption = Label3.Caption &amp; &quot;2.  The Solver moves disk After a small interval of approx half a sec.&quot; &amp; vbCrLf<br />
    Label3.Caption = Label3.Caption &amp; &quot;3.  For Larger Number of Disks the solver will take considerable amount of time. So avoid large values such as 8 or 9 for quick play. Try them otherwise&quot; &amp; vbCrLf<br />
    Label3.Caption = Label3.Caption &amp; &quot;==========================================================================================================================&quot; &amp; vbCrLf &amp; vbCrLf<br />
    Label3.Caption = Label3.Caption &amp; &quot;Input the Number Of Disks &#8230;&#8230;. and Press &#039;Solve&#039; &quot;</p>
<p>    &#039;txtInput.Text = &quot;&quot;<br />
    lstValues.Text = &quot;1&quot;<br />
    txtOutput.Text = &quot;&quot;<br />
    txtRules = Label3.Caption<br />
    optStandard.Value = True<br />
End Sub</p>
<p>Private Sub Form_Unload(Cancel As Integer)<br />
    StopHere = True<br />
End Sub</p>
<p>Sub Pause(ByVal nSecond As Single)<br />
   &#039;nSeconds should be the number of seconds you want the Pause to last<br />
   &#039;(may be a decimal fraction .5)<br />
   Dim StartTime As Single<br />
   StartTime = Timer<br />
   Do While Timer &#8211; StartTime &lt; nSecond<br />
  DoEvents &#039;Allows you to continue interacting with the rest of your program<br />
    &#039; if we cross midnight, back up one day<br />
    If Timer &lt; StartTime Then<br />
  &#039; separating the numbers stops a nasty overflow error<br />
        StartTime = StartTime &#8211; 24 * 60 * 60<br />
    End If<br />
   Loop<br />
End Sub</p>
<p>Private Sub Label3_Click()</p>
<p>End Sub</p>
<br />Filed under: <a href='http://programmervb.wordpress.com/category/uncategorized/'>Uncategorized</a> Tagged: <a href='http://programmervb.wordpress.com/tag/game/'>Game</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/programmervb.wordpress.com/525/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/programmervb.wordpress.com/525/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=525&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://programmervb.wordpress.com/2011/09/28/hanoi-tower/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/2674707c280c919927848f4ac76e810e?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Ed</media:title>
		</media:content>
	</item>
		<item>
		<title>Bound List</title>
		<link>http://programmervb.wordpress.com/2011/02/24/bound-list/</link>
		<comments>http://programmervb.wordpress.com/2011/02/24/bound-list/#comments</comments>
		<pubDate>Thu, 24 Feb 2011 11:01:23 +0000</pubDate>
		<dc:creator>programmervb</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://programmervb.wordpress.com/?p=523</guid>
		<description><![CDATA[Option Explicit Private Utility As New clsUtility Private mblnValidationFailed As Boolean Private Sub datProducts_Validate(Action As Integer, Save As Integer) Dim strMsg As String Dim enumMsgResult As VbMsgBoxResult If Save = True Or Action = vbDataActionUpdate _ Or mblnValidationFailed Or Action = vbDataActionAddNew Then &#8216; One or more bound controls has changed or a previous validation &#8230; <a href="http://programmervb.wordpress.com/2011/02/24/bound-list/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=523&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Option Explicit<br />
Private Utility As New clsUtility<br />
Private mblnValidationFailed As Boolean</p>
<p>Private Sub datProducts_Validate(Action As Integer, Save As Integer)<br />
    Dim strMsg As String<br />
    Dim enumMsgResult As VbMsgBoxResult</p>
<p>    If Save = True Or Action = vbDataActionUpdate _<br />
    Or mblnValidationFailed Or Action = vbDataActionAddNew Then<br />
        &#8216; One or more bound controls has changed or a previous validation failed,<br />
        &#8216; so verify that all fields have legal entries. If a field has an incorrect<br />
        &#8216; value, appenda string explaining the error to strMsg and set the focus<br />
        &#8216; to that field to facilitate correcting the error. We explain all<br />
        &#8216; errors encountered in a single message box.<br />
        strMsg = &#8220;&#8221;<br />
        If txtProductName.Text = &#8220;&#8221; Then<br />
             Utility.AddToMsg strMsg, &#8220;You must enter a Product name.&#8221;<br />
             txtProductName.SetFocus<br />
        End If</p>
<p>        If strMsg  &#8220;&#8221; Then<br />
             &#8216; We have something in the variable strMsg, which means that an error<br />
             &#8216; has occurred. Display the message. The focus is in the last<br />
             &#8216; text box where an error was found<br />
             enumMsgResult = MsgBox(strMsg, vbExclamation + vbOKCancel + _<br />
                     vbDefaultButton1)</p>
<p>             If enumMsgResult = vbCancel Then<br />
                 &#8216;Restore the data to previous values using the data control<br />
                 datProducts.UpdateControls<br />
                 mblnValidationFailed = False<br />
             Else<br />
                 &#8216; Cancel the Validate event<br />
                 Action = vbDataActionCancel<br />
                 &#8216; Deny form Unload until fields are corrected<br />
                 mblnValidationFailed = True<br />
             End If<br />
         Else<br />
             mblnValidationFailed = False<br />
         End If<br />
    End If</p>
<p>End Sub<br />
Private Sub Form_Unload(Cancel As Integer)</p>
<p>    &#8216; Don&#8217;t allow the unload until the data is validate or the<br />
    &#8216; update is cancelled<br />
    If mblnValidationFailed Then Cancel = True</p>
<p>End Sub<br />
Private Sub mnuDataAdd_Click()</p>
<p>    &#8216; Reset all controls to the default for a new record<br />
    &#8216; and make space for the record in the recordset copy<br />
    &#8216; buffer.<br />
    datProducts.Recordset.AddNew</p>
<p>    &#8216;Enable the save menu choice<br />
    mnuDataSave.Enabled = True</p>
<p>    &#8216; Set the focus to the first control on the form<br />
    txtProductName.SetFocus<br />
End Sub</p>
<p>Private Sub mnuDataDelete_Click()<br />
    Dim strMsg As String</p>
<p>    &#8216;Verify the deletion.<br />
    strMsg = &#8220;Are you sure you want to delete &#8221; _<br />
            &amp; IIf(txtProductName.Text  &#8220;&#8221;, txtProductName.Text, _<br />
                &#8220;this record&#8221;) &amp; &#8220;?&#8221;<br />
    If MsgBox(strMsg, vbQuestion + vbYesNo + vbDefaultButton2) = vbYes Then</p>
<p>        &#8216; We really want to delete<br />
        datProducts.Recordset.Delete</p>
<p>        &#8216; Make a valid record the current record and update the display.<br />
        datProducts.Recordset.MoveNext</p>
<p>        &#8216; If we deleted the last record, move to the new last record<br />
        &#8216; because the current record pointer is not defined after<br />
        &#8216; deleting the last record, even though EOF is defined.<br />
        If datProducts.Recordset.EOF Then datProducts.Recordset.MoveLast<br />
    End If<br />
End Sub</p>
<p>Private Sub mnuDataSave_Click()</p>
<p>    &#8216; Invoke the update method to copy control contents to<br />
    &#8216; recordset fields and update the underlying table<br />
    datProducts.Recordset.Update<br />
    If datProducts.Recordset.EditMode  dbEditAdd Then</p>
<p>        &#8216; If we added move to the new record<br />
        datProducts.Recordset.MoveLast<br />
   End If</p>
<p>End Sub</p>
<p>Private Sub mnuEditUndo_Click()</p>
<p>    &#8216; Undo all pending changes from form by copy recordset values<br />
    &#8216; to form controls<br />
    datProducts.UpdateControls</p>
<p>    If datProducts.Recordset.EditMode = dbEditAdd Then</p>
<p>        &#8216; Disable the menu save and cancel the update<br />
        datProducts.Recordset.CancelUpdate<br />
        mnuDataSave.Enabled = False<br />
    End If</p>
<p>End Sub</p>
<p>Private Sub mnuFileExit_Click()</p>
<p>    Unload Me</p>
<p>End Sub</p>
<br />Filed under: <a href='http://programmervb.wordpress.com/category/uncategorized/'>Uncategorized</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/programmervb.wordpress.com/523/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/programmervb.wordpress.com/523/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=523&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://programmervb.wordpress.com/2011/02/24/bound-list/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/2674707c280c919927848f4ac76e810e?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Ed</media:title>
		</media:content>
	</item>
		<item>
		<title>Set Options</title>
		<link>http://programmervb.wordpress.com/2010/11/29/set-options/</link>
		<comments>http://programmervb.wordpress.com/2010/11/29/set-options/#comments</comments>
		<pubDate>Mon, 29 Nov 2010 13:57:02 +0000</pubDate>
		<dc:creator>programmervb</dc:creator>
				<category><![CDATA[control]]></category>

		<guid isPermaLink="false">http://programmervb.wordpress.com/?p=521</guid>
		<description><![CDATA[Option Explicit &#8216; form level variable used to store the selected parameter from the list &#8216; in the keys combo box Private m_lSelectedParameter As Long &#8216; form level constant declarations used throughout the application to name &#8216; the application and section when using the Get and Save settings methods Private Const APPLICATION_TITLE = &#8220;VB6DBHT Chapter &#8230; <a href="http://programmervb.wordpress.com/2010/11/29/set-options/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=521&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Option Explicit</p>
<p>&#8216; form level variable used to store the selected parameter from the list<br />
&#8216; in the keys combo box<br />
Private m_lSelectedParameter As Long</p>
<p>&#8216; form level constant declarations used throughout the application to name<br />
&#8216; the application and section when using the Get and Save settings methods<br />
Private Const APPLICATION_TITLE = &#8220;VB6DBHT Chapter 11&#8243;<br />
Private Const SECTION_NAME = &#8220;Jet 3.5&#8243;</p>
<p>Private Sub Form_Load()</p>
<p>&#8216; load all Jet Registry settings from application section fo the<br />
&#8216; Windows Registry<br />
LoadJetRegistryInformation APPLICATION_TITLE, SECTION_NAME</p>
<p>With cboKeys</p>
<p>&#8216; add all of the available parameters for the SetOption method</p>
<p>.AddItem &#8220;dbPageTimeout&#8221;<br />
.AddItem &#8220;dbSharedAsyncDelay&#8221;<br />
.AddItem &#8220;dbExclusiveAsyncDelay&#8221;<br />
.AddItem &#8220;dbLockRetry&#8221;<br />
.AddItem &#8220;dbUserCommitSync&#8221;<br />
.AddItem &#8220;dbImplicitCommitSync&#8221;<br />
.AddItem &#8220;dbMaxBufferSize&#8221;<br />
.AddItem &#8220;dbMaxLocksPerFile&#8221;<br />
.AddItem &#8220;dbLockDelay&#8221;<br />
.AddItem &#8220;dbRecycleLVs&#8221;<br />
.AddItem &#8220;dbFlushTransactionTimeout&#8221;</p>
<p>&#8216; select the first item in the combo box control<br />
.ListIndex = 0</p>
<p>End With</p>
<p>End Sub</p>
<p>Private Sub cboKeys_Click()</p>
<p>Dim lDefaultSetting As Variant</p>
<p>With cboKeys</p>
<p>&#8216; get a long value from the text version of the key<br />
m_lSelectedParameter = GetParameterFromKey(.Text)</p>
<p>&#8216; obtain the default setting for the key<br />
lDefaultSetting = GetDefaultKeySetting(.Text)</p>
<p>&#8216; display the current setting from the applications Registry<br />
&#8216; settings if there is one, otherwise, display the default<br />
txtSetting = GetSetting(APPLICATION_TITLE, _<br />
SECTION_NAME, _<br />
.Text, _<br />
lDefaultSetting)</p>
<p>End With</p>
<p>End Sub</p>
<p>Private Sub cmdClose_Click()</p>
<p>&#8216; end the application<br />
Unload Me</p>
<p>End Sub</p>
<p>Private Sub cmdSave_Click()</p>
<p>&#8216; if there is an error, goto the code labeled by ERR_cmdSave_Click<br />
On Error GoTo ERR_cmdSave_Click:</p>
<p>&#8216; constant declarations for expected errors<br />
Const ERR_TYPE_MISMATCH = 13<br />
Const ERR_RESERVED_ERROR = 3000</p>
<p>&#8216; attempt to set the DBEngine option for the given key<br />
&#8216; an error will occur here if an incorrect setting data type is<br />
&#8216; entered by the user<br />
DBEngine.SetOption m_lSelectedParameter, GetValueFromSetting(txtSetting)</p>
<p>&#8216; if the SetOption method was successful, then save the new setting<br />
&#8216; value in the application Registry section<br />
SaveSetting APPLICATION_TITLE, SECTION_NAME, cboKeys.Text, txtSetting</p>
<p>&#8216; inform the user of the success<br />
MsgBox &#8220;Change has been made.&#8221;, vbInformation, &#8220;Set Option&#8221;</p>
<p>Exit Sub</p>
<p>ERR_cmdSave_Click:</p>
<p>Dim sMessage As String</p>
<p>With Err</p>
<p>Select Case .Number</p>
<p>&#8216; wrong data type entered for key setting<br />
Case ERR_TYPE_MISMATCH, ERR_RESERVED_ERROR:<br />
sMessage = &#8220;Value is of incorrect format.&#8221;</p>
<p>&#8216; unexpected error, create a message from the error<br />
Case Else:<br />
sMessage = &#8220;ERROR #&#8221; &amp; .Number &amp; &#8220;: &#8221; &amp; .Description</p>
<p>End Select</p>
<p>End With</p>
<p>&#8216; inform the user of the error<br />
MsgBox sMessage, vbExclamation, &#8220;ERROR&#8221;</p>
<p>&#8216; repopulate the setting text box with the current or default key<br />
&#8216; setting and set focus to the text box</p>
<p>cboKeys_Click<br />
txtSetting.SetFocus</p>
<p>End Sub</p>
<p>Private Sub cmdDelete_Click()</p>
<p>&#8216; remove the setting from the application section of the Windows<br />
&#8216; Registry<br />
DeleteSetting APPLICATION_TITLE, SECTION_NAME, cboKeys.Text</p>
<p>&#8216; refresh the setting text box with the default value<br />
cboKeys_Click</p>
<p>&#8216; inform the user of the success<br />
MsgBox &#8220;Key has been deleted.&#8221;, vbInformation, &#8220;Delete Key&#8221;</p>
<p>End Sub</p>
<p>&nbsp;</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>&#8216;Module</p>
<p>Option Explicit</p>
<p>Public Sub LoadJetRegistryInformation(sApplicationName As String, _<br />
sSectionName As String)</p>
<p>&#8216; if there is an error, goto the code labeled by<br />
&#8216; ERR_LoadJetRegistryInformation<br />
On Error GoTo ERR_LoadJetRegistryInformation:</p>
<p>Dim vSettings As Variant<br />
Dim nCount As Integer</p>
<p>&#8216; constant declaration for expected error<br />
Const ERR_TYPE_MISMATCH = 13</p>
<p>&#8216; obtain all of the settings from the Registry section for the given<br />
&#8216; application<br />
vSettings = GetAllSettings(sApplicationName, sSectionName)</p>
<p>&#8216; set all of the options that were specified in the Jet 3.5 section for<br />
&#8216; the current application<br />
For nCount = 0 To UBound(vSettings, 1)</p>
<p>DBEngine.SetOption GetParameterFromKey _<br />
(vSettings(nCount, 0)), _<br />
GetValueFromSetting(vSettings(nCount, 1))</p>
<p>Next nCount</p>
<p>Exit Sub</p>
<p>ERR_LoadJetRegistryInformation:</p>
<p>With Err</p>
<p>Select Case .Number</p>
<p>&#8216; there was no settings specified in the Registry for the<br />
&#8216; given application, just continue without displaying an<br />
&#8216; error message<br />
Case ERR_TYPE_MISMATCH:</p>
<p>&#8216; unexpected error, create a message from the error<br />
Case Else:<br />
MsgBox &#8220;ERROR #&#8221; &amp; .Number &amp; &#8220;: &#8221; &amp; .Description, _<br />
vbExclamation, &#8220;ERROR&#8221;</p>
<p>End Select</p>
<p>End With</p>
<p>End Sub</p>
<p>Public Function GetValueFromSetting(vSetting As Variant) As Variant</p>
<p>&#8216; if the setting is a number, return a long, otherwise return a string</p>
<p>If (IsNumeric(vSetting)) Then<br />
GetValueFromSetting = CLng(vSetting)<br />
Else<br />
GetValueFromSetting = CStr(vSetting)<br />
End If</p>
<p>End Function</p>
<p>Public Function GetDefaultKeySetting(sKey As String) As Variant</p>
<p>&#8216; return the defualt key setting for the key specified</p>
<p>Select Case sKey</p>
<p>Case &#8220;dbPageTimeout&#8221;:<br />
GetDefaultKeySetting = 5000</p>
<p>Case &#8220;dbSharedAsyncDelay&#8221;:<br />
GetDefaultKeySetting = 0</p>
<p>Case &#8220;dbExclusiveAsyncDelay&#8221;:<br />
GetDefaultKeySetting = 2000</p>
<p>Case &#8220;dbLockEntry&#8221;:<br />
GetDefaultKeySetting = 20</p>
<p>Case &#8220;dbUserCommitSync&#8221;:<br />
GetDefaultKeySetting = &#8220;Yes&#8221;</p>
<p>Case &#8220;dbImplicitCommitSync&#8221;:<br />
GetDefaultKeySetting = &#8220;No&#8221;</p>
<p>Case &#8220;dbMaxBufferSize&#8221;:<br />
GetDefaultKeySetting = 0</p>
<p>Case &#8220;dbMaxLocksPerFile&#8221;:<br />
GetDefaultKeySetting = 9500</p>
<p>Case &#8220;dbLockDelay&#8221;:<br />
GetDefaultKeySetting = 100</p>
<p>Case &#8220;dbRecycleLVs&#8221;:<br />
GetDefaultKeySetting = 0</p>
<p>Case &#8220;dbFlushTransactionTimeout&#8221;:<br />
GetDefaultKeySetting = 500</p>
<p>End Select</p>
<p>End Function</p>
<p>Public Function GetParameterFromKey(ByVal sKey As String) As Long</p>
<p>&#8216; return the correct constant for the given key</p>
<p>Select Case sKey</p>
<p>Case &#8220;dbPageTimeout&#8221;:<br />
GetParameterFromKey = dbPageTimeout</p>
<p>Case &#8220;dbSharedAsyncDelay&#8221;:<br />
GetParameterFromKey = dbSharedAsyncDelay</p>
<p>Case &#8220;dbExclusiveAsyncDelay&#8221;:<br />
GetParameterFromKey = dbExclusiveAsyncDelay</p>
<p>Case &#8220;dbLockRetry&#8221;:<br />
GetParameterFromKey = dbLockRetry</p>
<p>Case &#8220;dbUserCommitSync&#8221;:<br />
GetParameterFromKey = dbUserCommitSync</p>
<p>Case &#8220;dbImplicitCommitSync&#8221;:<br />
GetParameterFromKey = dbImplicitCommitSync</p>
<p>Case &#8220;dbMaxBufferSize&#8221;:<br />
GetParameterFromKey = dbMaxBufferSize</p>
<p>Case &#8220;dbMaxLocksPerFile&#8221;:<br />
GetParameterFromKey = dbMaxLocksPerFile</p>
<p>Case &#8220;dbLockDelay&#8221;:<br />
GetParameterFromKey = dbLockDelay</p>
<p>Case &#8220;dbRecycleLVs&#8221;:<br />
GetParameterFromKey = dbRecycleLVs</p>
<p>Case &#8220;dbFlushTransactionTimeout&#8221;:<br />
GetParameterFromKey = dbFlushTransactionTimeout</p>
<p>End Select</p>
<p>End Function</p>
<br />Filed under: <a href='http://programmervb.wordpress.com/category/control/'>control</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/programmervb.wordpress.com/521/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/programmervb.wordpress.com/521/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=521&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://programmervb.wordpress.com/2010/11/29/set-options/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/2674707c280c919927848f4ac76e810e?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Ed</media:title>
		</media:content>
	</item>
		<item>
		<title>Download File</title>
		<link>http://programmervb.wordpress.com/2010/09/04/download-file/</link>
		<comments>http://programmervb.wordpress.com/2010/09/04/download-file/#comments</comments>
		<pubDate>Sat, 04 Sep 2010 10:54:09 +0000</pubDate>
		<dc:creator>programmervb</dc:creator>
				<category><![CDATA[Application]]></category>

		<guid isPermaLink="false">http://programmervb.wordpress.com/?p=516</guid>
		<description><![CDATA[Private Declare Function DoFileDownload Lib &#8220;shdocvw.dll&#8221; (ByVal lpszFile As String) As Long Private Declare Function URLDownloadToFile Lib &#8220;urlmon&#8221; Alias &#8220;URLDownloadToFileA&#8221; (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long Private Sub Command1_Click() End Sub Private Sub cmdMethod1_Click() Dim thePath As String thePath &#8230; <a href="http://programmervb.wordpress.com/2010/09/04/download-file/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=516&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Private Declare Function DoFileDownload Lib &#8220;shdocvw.dll&#8221; (ByVal lpszFile As String) As Long<br />
Private Declare Function URLDownloadToFile Lib &#8220;urlmon&#8221; Alias &#8220;URLDownloadToFileA&#8221; (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long</p>
<p>Private Sub Command1_Click()</p>
<p>End Sub</p>
<p>Private Sub cmdMethod1_Click()<br />
Dim thePath As String</p>
<p>thePath = InputBox(&#8220;What is the url to download the file?&#8221;, &#8221; File Url&#8221;, &#8220;<a href="http://&#038;#8221" rel="nofollow">http://&#038;#8221</a>;)</p>
<p>&#8216;The path has to be converted to Unicode<br />
thePath = StrConv(thePath, vbUnicode)</p>
<p>DoFileDownload thePath<br />
End Sub</p>
<p>Private Sub Command2_Click()</p>
<p>End Sub</p>
<p>Private Sub cmdMethod2_Click()<br />
Dim retVal As Long &#8216;our return value<br />
Dim theUrl As String &#8216;the url you want to download<br />
Dim savePath As String &#8216;where you want to save the url<br />
Dim pathExist As Long &#8216;will contain our path exist or not value</p>
<p>theUrl = InputBox(&#8220;What is the url you want to download?&#8221;, &#8221; Url Path?&#8221;, &#8220;<a href="http://&#038;#8221" rel="nofollow">http://&#038;#8221</a>;)<br />
If theUrl = &#8220;&#8221; Then Exit Sub</p>
<p>savePath = InputBox(&#8220;What is the path and filename to save the url to?&#8221;, &#8221; Path and Filename to save&#8221;)<br />
If savePath = &#8220;&#8221; Then Exit Sub</p>
<p>retVal = URLDownloadToFile(0, theUrl, savePath, 0, 0)</p>
<p>If retVal = 0 Then<br />
MsgBox &#8220;File was downloaded successfully!&#8221;, vbExclamation, &#8221; Download Successful&#8221;<br />
Else<br />
MsgBox &#8220;There was a error downloading the file. Make sure that the url is valid and try again!&#8221;, vbCritical, &#8221; Error&#8221;<br />
End If<br />
End Sub</p>
<p>source:www.vbcodesource.com</p>
<br />Filed under: <a href='http://programmervb.wordpress.com/category/application/'>Application</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/programmervb.wordpress.com/516/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/programmervb.wordpress.com/516/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=516&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://programmervb.wordpress.com/2010/09/04/download-file/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/2674707c280c919927848f4ac76e810e?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Ed</media:title>
		</media:content>
	</item>
		<item>
		<title>Convert Huruf Besar -&gt; Huruf Kecil</title>
		<link>http://programmervb.wordpress.com/2010/06/12/convert-huruf-besar-huruf-kecil/</link>
		<comments>http://programmervb.wordpress.com/2010/06/12/convert-huruf-besar-huruf-kecil/#comments</comments>
		<pubDate>Sat, 12 Jun 2010 16:00:39 +0000</pubDate>
		<dc:creator>programmervb</dc:creator>
				<category><![CDATA[info]]></category>

		<guid isPermaLink="false">http://programmervb.wordpress.com/?p=514</guid>
		<description><![CDATA[Gunakan StrConv untuk mengubah huruf besar menjadi huruf kecil contohnya, Text=&#8221;Visual Basic, VB&#8221; Print StrConv(text, vbProperCase)&#8217; &#8220;Visual Basic, VB&#8221; Filed under: info<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=514&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Gunakan StrConv untuk mengubah huruf besar menjadi huruf kecil contohnya,</p>
<p>Text=&#8221;Visual Basic, VB&#8221;</p>
<p>Print StrConv(text, vbProperCase)&#8217; &#8220;Visual Basic, VB&#8221;</p>
<br />Filed under: <a href='http://programmervb.wordpress.com/category/info/'>info</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/programmervb.wordpress.com/514/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/programmervb.wordpress.com/514/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=514&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://programmervb.wordpress.com/2010/06/12/convert-huruf-besar-huruf-kecil/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/2674707c280c919927848f4ac76e810e?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Ed</media:title>
		</media:content>
	</item>
		<item>
		<title>Detects the drive letter associated with the CD &#8211; ROM Drive</title>
		<link>http://programmervb.wordpress.com/2010/05/09/detects-the-drive-letter-associated-with-the-cd-rom-drive/</link>
		<comments>http://programmervb.wordpress.com/2010/05/09/detects-the-drive-letter-associated-with-the-cd-rom-drive/#comments</comments>
		<pubDate>Sun, 09 May 2010 16:53:32 +0000</pubDate>
		<dc:creator>programmervb</dc:creator>
				<category><![CDATA[control]]></category>

		<guid isPermaLink="false">http://programmervb.wordpress.com/?p=510</guid>
		<description><![CDATA[&#8216;Description: Detects the drive letter associated with the CD &#8211; ROM Drive. &#8216;Private Declare Function GetDriveType Lib &#8220;kernel32&#8243; Alias &#8220;GetDriveTypeA&#8221; (ByVal nDrive As String) As Long &#8216;Private Declare Function GetLogicalDriveStrings Lib &#8220;kernel32&#8243; Alias &#8220;GetLogicalDriveStringsA&#8221; (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long &#8216;Private Const DRIVE_REMOVABLE = 2 &#8216;Private Const DRIVE_FIXED = 3 &#8216;Private &#8230; <a href="http://programmervb.wordpress.com/2010/05/09/detects-the-drive-letter-associated-with-the-cd-rom-drive/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=510&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>&#8216;Description: Detects the drive letter associated with the CD &#8211; ROM Drive.</p>
<p>&#8216;Private Declare Function GetDriveType Lib &#8220;kernel32&#8243; Alias &#8220;GetDriveTypeA&#8221; (ByVal nDrive As String) As Long<br />
&#8216;Private Declare Function GetLogicalDriveStrings Lib &#8220;kernel32&#8243; Alias &#8220;GetLogicalDriveStringsA&#8221; (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long<br />
&#8216;Private Const DRIVE_REMOVABLE = 2<br />
&#8216;Private Const DRIVE_FIXED = 3<br />
&#8216;Private Const DRIVE_REMOTE = 4<br />
&#8216;Private Const DRIVE_CDROM = 5<br />
&#8216;Private Const DRIVE_RAMDISK = 6</p>
<p>&#8216;Place the following code in under a command button or in a menu, etc&#8230;</p>
<p>Dim r&amp;, allDrives$, JustOneDrive$, pos%, DriveType&amp;<br />
Dim CDfound As Integer<br />
allDrives$ = Space$(64)<br />
r&amp; = GetLogicalDriveStrings(Len(allDrives$), allDrives$)<br />
allDrives$ = Left$(allDrives$, r&amp;)<br />
Do<br />
pos% = InStr(allDrives$, Chr$(0))<br />
If pos% Then<br />
JustOneDrive$ = Left$(allDrives$, pos%)<br />
allDrives$ = Mid$(allDrives$, pos% + 1, Len(allDrives$))<br />
DriveType&amp; = GetDriveType(JustOneDrive$)<br />
If DriveType&amp; = DRIVE_CDROM Then<br />
CDfound% = True<br />
Exit Do<br />
End If<br />
End If<br />
Loop Until allDrives$ = &#8220;&#8221; Or DriveType&amp; = DRIVE_CDROM<br />
If CDfound% Then<br />
label1 = &#8220;The CD-ROM drive on your system is drive &#8221; &amp; UCase$(JustOneDrive$)<br />
Else: label1 = &#8220;No CD-ROM drives were detected on your system.&#8221;<br />
End If</p>
<br />Filed under: <a href='http://programmervb.wordpress.com/category/control/'>control</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/programmervb.wordpress.com/510/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/programmervb.wordpress.com/510/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=510&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://programmervb.wordpress.com/2010/05/09/detects-the-drive-letter-associated-with-the-cd-rom-drive/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/2674707c280c919927848f4ac76e810e?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Ed</media:title>
		</media:content>
	</item>
		<item>
		<title>Getting Started Spidering a Site</title>
		<link>http://programmervb.wordpress.com/2010/03/30/getting-started-spidering-a-site/</link>
		<comments>http://programmervb.wordpress.com/2010/03/30/getting-started-spidering-a-site/#comments</comments>
		<pubDate>Tue, 30 Mar 2010 16:34:32 +0000</pubDate>
		<dc:creator>programmervb</dc:creator>
				<category><![CDATA[Application]]></category>

		<guid isPermaLink="false">http://programmervb.wordpress.com/?p=508</guid>
		<description><![CDATA[‘ The Chilkat Spider component/library is free. Dim spider As New Spider '  The spider object crawls a single web site at a time.  As you'll see '  in later examples, you can collect outbound links and use them to '  crawl the web.  For now, we'll simply spider 10 pages of chilkatsoft.com spider.Initialize "www.chilkatsoft.com" &#8230; <a href="http://programmervb.wordpress.com/2010/03/30/getting-started-spidering-a-site/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=508&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<pre>‘ The Chilkat Spider component/library is free.
Dim spider As New Spider

'  The spider object crawls a single web site at a time.  As you'll see
'  in later examples, you can collect outbound links and use them to
'  crawl the web.  For now, we'll simply spider 10 pages of chilkatsoft.com
spider.Initialize "www.chilkatsoft.com"

'  Add the 1st URL:
spider.AddUnspidered "http://www.chilkatsoft.com/"

'  Begin crawling the site by calling CrawlNext repeatedly.
Dim i As Long
For i = 0 To 9
    Dim success As Long
    success = spider.CrawlNext()
    If (success = 1) Then
        '  Show the URL of the page just spidered.
        Text1.Text = Text1.Text &amp; spider.LastUrl &amp; vbCrLf
        '  The HTML is available in the LastHtml property
    Else
        '  Did we get an error or are there no more URLs to crawl?
        If (spider.NumUnspidered = 0) Then
            MsgBox "No more URLs to spider"
        Else
            MsgBox spider.LastErrorText
        End If

    End If

    '  Sleep 1 second before spidering the next URL.
    spider.SleepMs 1000</pre>
<p>Next</p>
<p><a title="source code" href="http://www.example-code.com" target="_blank">&#8216;Source :www.example-code.com</a></p>
<br />Filed under: <a href='http://programmervb.wordpress.com/category/application/'>Application</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/programmervb.wordpress.com/508/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/programmervb.wordpress.com/508/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=508&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://programmervb.wordpress.com/2010/03/30/getting-started-spidering-a-site/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/2674707c280c919927848f4ac76e810e?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Ed</media:title>
		</media:content>
	</item>
		<item>
		<title>Extra Time</title>
		<link>http://programmervb.wordpress.com/2010/02/22/extra-time/</link>
		<comments>http://programmervb.wordpress.com/2010/02/22/extra-time/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 16:31:26 +0000</pubDate>
		<dc:creator>programmervb</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://programmervb.wordpress.com/2010/02/22/extra-time/</guid>
		<description><![CDATA[Private Sub Command1_Click() mDate1 = CDate(&#8220;01-06-2002 7:38 am&#8221;) &#8216; Add Hour To Add TimeOut mDate2 = DateAdd(&#8220;h&#8221;, 9, mDate1) mDate2 = DateAdd(&#8220;s&#8221;, 1800, mDate2) &#8216; Add Over Time Amount! mDate2 = DateAdd(&#8220;h&#8221;, 3, mDate2) mDate2 = DateAdd(&#8220;s&#8221;, 1800, mDate2) &#8216; &#38; If There Time as 3:30 Or 5:30 then for 30 Use This Line &#8216; &#8230; <a href="http://programmervb.wordpress.com/2010/02/22/extra-time/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=507&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Private Sub Command1_Click()</p>
<p>  mDate1 = CDate(&#8220;01-06-2002 7:38 am&#8221;)</p>
<p>  &#8216; Add Hour To Add TimeOut<br />
  mDate2 = DateAdd(&#8220;h&#8221;, 9, mDate1)<br />
  mDate2 = DateAdd(&#8220;s&#8221;, 1800, mDate2)</p>
<p>  &#8216; Add Over Time Amount!<br />
  mDate2 = DateAdd(&#8220;h&#8221;, 3, mDate2)<br />
  mDate2 = DateAdd(&#8220;s&#8221;, 1800, mDate2)   &#8216; &amp; If There Time as 3:30 Or 5:30 then for 30 Use This Line</p>
<p>  &#8216; Calculate Exact Time<br />
  mHour = DateDiff(&#8220;h&#8221;, mDate1, mDate2)<br />
  mDMint = DateDiff(&#8220;n&#8221;, mDate1, mDate2)<br />
  mhMint = Round(mHour &#8211; Int((mDMint / 60)), 0)<br />
  NetHr = (mHour &#8211; mhMint)</p>
<p>  &#8216; Now Add Minits In Time<br />
  mMinits = Abs((NetHr * 60) &#8211; mDMint)<br />
  NetTime = NetHr + IIf((mMinits / 100) &gt;= 0.3, 0.5, (mMinits / 100))</p>
<p>  OverTimeAmount = (NetTime &#8211; 9.5)</p>
<p>End Sub</p>
<br />Filed under: <a href='http://programmervb.wordpress.com/category/uncategorized/'>Uncategorized</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/programmervb.wordpress.com/507/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/programmervb.wordpress.com/507/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=507&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://programmervb.wordpress.com/2010/02/22/extra-time/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/2674707c280c919927848f4ac76e810e?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Ed</media:title>
		</media:content>
	</item>
		<item>
		<title>Save and Lost Text Files</title>
		<link>http://programmervb.wordpress.com/2010/01/19/save-and-lost-text-files/</link>
		<comments>http://programmervb.wordpress.com/2010/01/19/save-and-lost-text-files/#comments</comments>
		<pubDate>Tue, 19 Jan 2010 17:18:41 +0000</pubDate>
		<dc:creator>programmervb</dc:creator>
				<category><![CDATA[control]]></category>

		<guid isPermaLink="false">http://programmervb.wordpress.com/?p=505</guid>
		<description><![CDATA[Sub LoadText(Lst As TextBox, file As String) &#8216;Call LoadText (Text1,&#8221;C:\Windows\System\Saved.txt&#8221;) On Error GoTo error Dim mystr As String Open file For Input As #1 Do While Not EOF(1) Line Input #1, a$ texto$ = texto$ + a$ + Chr$(13) + Chr$(10) Loop Lst = texto$ Close #1 Exit Sub error: X = MsgBox(&#8220;File Not Found&#8221;, &#8230; <a href="http://programmervb.wordpress.com/2010/01/19/save-and-lost-text-files/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=505&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Sub LoadText(Lst As TextBox, file As String)<br />
&#8216;Call LoadText (Text1,&#8221;C:\Windows\System\Saved.txt&#8221;)<br />
On Error GoTo error<br />
Dim mystr As String<br />
Open file For Input As #1<br />
Do While Not EOF(1)<br />
Line Input #1, a$<br />
texto$ = texto$ + a$ + Chr$(13) + Chr$(10)<br />
Loop<br />
Lst = texto$<br />
Close #1<br />
Exit Sub<br />
error:<br />
X = MsgBox(&#8220;File Not Found&#8221;, vbOKOnly, &#8220;Error&#8221;)<br />
End Sub</p>
<p>Sub SaveText(Lst As TextBox, file As String)<br />
&#8216;Call SaveText (Text1,&#8221;C:\Windows\System\Saved.txt&#8221;)<br />
On Error GoTo error<br />
Dim mystr As String<br />
Open file For Output As #1<br />
Print #1, Lst<br />
Close 1<br />
Exit Sub<br />
error:<br />
X = MsgBox(&#8220;There has been a error!&#8221;, vbOKOnly, &#8220;Error&#8221;)<br />
End Sub</p>
<p>&#8216;From:PulseWave</p>
<br />Posted in control  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/programmervb.wordpress.com/505/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/programmervb.wordpress.com/505/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=505&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://programmervb.wordpress.com/2010/01/19/save-and-lost-text-files/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/2674707c280c919927848f4ac76e810e?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Ed</media:title>
		</media:content>
	</item>
		<item>
		<title>Limit Mouse</title>
		<link>http://programmervb.wordpress.com/2009/12/08/limit-mouse-2/</link>
		<comments>http://programmervb.wordpress.com/2009/12/08/limit-mouse-2/#comments</comments>
		<pubDate>Tue, 08 Dec 2009 15:48:23 +0000</pubDate>
		<dc:creator>programmervb</dc:creator>
				<category><![CDATA[forms]]></category>

		<guid isPermaLink="false">http://programmervb.wordpress.com/?p=503</guid>
		<description><![CDATA[Option Explicit Private Type RECT left                 As Integer top                  As Integer right                As Integer bottom               As Integer End Type Private Type POINT x                    As Long y                    As Long End Type Private Declare Sub ClipCursor Lib &#8220;user32&#8243; (lpRect As Any) Private Declare Sub GetClientRect Lib &#8220;user32&#8243; (ByVal hWnd As _ Long, lpRect As RECT) Private Declare &#8230; <a href="http://programmervb.wordpress.com/2009/12/08/limit-mouse-2/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=503&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Option Explicit</p>
<p>Private Type RECT<br />
left                 As Integer<br />
top                  As Integer<br />
right                As Integer<br />
bottom               As Integer<br />
End Type</p>
<p>Private Type POINT<br />
x                    As Long<br />
y                    As Long<br />
End Type</p>
<p>Private Declare Sub ClipCursor Lib &#8220;user32&#8243; (lpRect As Any)<br />
Private Declare Sub GetClientRect Lib &#8220;user32&#8243; (ByVal hWnd As _<br />
Long, lpRect As RECT)<br />
Private Declare Sub ClientToScreen Lib &#8220;user32&#8243; (ByVal hWnd As _<br />
Long, lpPoint As POINT)<br />
Private Declare Sub OffsetRect Lib &#8220;user32&#8243; (lpRect As RECT, _<br />
ByVal x As Long, ByVal y As Long)</p>
<p>Public Sub LimitCursorMovement(ctl As Object)</p>
<p>Dim client           As RECT<br />
Dim upperleft        As POINT<br />
Dim lHwnd As Long<br />
On Error Resume Next<br />
lHwnd = ctl.hWnd<br />
If lHwnd = 0 Then Exit Sub<br />
GetClientRect ctl.hWnd, client<br />
upperleft.x = client.left<br />
upperleft.y = client.top<br />
ClientToScreen ctl.hWnd, upperleft<br />
OffsetRect client, upperleft.x, upperleft.y<br />
ClipCursor client<br />
End Sub</p>
<p>Public Sub ReleaseLimit()<br />
&#8216;Releases the cursor limits<br />
&#8216;Be sure to call on unloading the form<br />
ClipCursor ByVal 0&amp;<br />
End Sub</p>
<p>Private Sub cmdNormal_Click()<br />
ReleaseLimit<br />
End Sub</p>
<p>Private Sub cmdSetLimit_Click()<br />
LimitCursorMovement Me<br />
End Sub</p>
<p>Private Sub Form_Load()<br />
ReleaseLimit</p>
<p>End Sub</p>
<p>Private Sub Form_Unload(Cancel As Integer)<br />
ReleaseLimit<br />
End Sub</p>
<br />Posted in forms  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/programmervb.wordpress.com/503/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/programmervb.wordpress.com/503/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=programmervb.wordpress.com&#038;blog=3238720&#038;post=503&#038;subd=programmervb&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://programmervb.wordpress.com/2009/12/08/limit-mouse-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/2674707c280c919927848f4ac76e810e?s=96&#38;d=http%3A%2F%2F2.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Ed</media:title>
		</media:content>
	</item>
	</channel>
</rss>
