<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2enclosuresfull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:media="http://search.yahoo.com/mrss/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-8095366463821181595</atom:id><lastBuildDate>Mon, 28 Nov 2011 01:36:20 +0000</lastBuildDate><title>Visual Basic Programmer</title><description>This Blogspot is dedicate to all of Visual Basic Programmer that have desire to help all new programmer VB</description><link>http://programmervb.blogspot.com/</link><managingEditor>noreply@blogger.com (Kaleng)</managingEditor><generator>Blogger</generator><openSearch:totalResults>27</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/VisualBasicProgrammer" /><feedburner:info uri="visualbasicprogrammer" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><itunes:owner><itunes:email>noreply@blogger.com</itunes:email></itunes:owner><itunes:explicit>no</itunes:explicit><itunes:subtitle>This Blogspot is dedicate to all of Visual Basic Programmer that have desire to help all new programmer VB</itunes:subtitle><feedburner:emailServiceId>VisualBasicProgrammer</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-5948164571609031349</guid><pubDate>Wed, 06 May 2009 12:54:00 +0000</pubDate><atom:updated>2009-05-06T05:59:21.567-07:00</atom:updated><title>Make a standard DLL</title><description>&lt;span class="Apple-style-span"  style=" ;font-family:'times new roman';"&gt;This examples builds a standard DLL that you can call by using the normal DLL calling conventions. For full details, see the article &lt;a href="http://www.windowsdevcenter.com/pub/a/windows/2005/04/26/create_dll.html"&gt;Creating a Windows DLL with Visual Basic&lt;/a&gt;.&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'times new roman';"&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; "&gt;&lt;table width="100%" border="0" cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;p&gt;Thanks to &lt;a href="http://www.adelard.com/"&gt;Luke Emmet&lt;/a&gt; for pointing this article out.&lt;/p&gt;&lt;p&gt;The basic staps are:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Hack the linking process.&lt;ol&gt;&lt;li&gt;Make an executable program to call the linker. Reomve the default Form1 and create the following Sub Main.&lt;/li&gt;&lt;/ol&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt; &lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td background="http://www.vb-helper.com/computer_paper.jpg"&gt;&lt;pre&gt;&lt;span name="Courier New"  style="font-size:85%;"&gt;Public Sub Main()    Dim SpecialLink As Boolean, fCPL As Boolean, fResource _        As Boolean    Dim intPos As Integer    Dim strCmd As String    Dim strPath As String    Dim strFileContents As String    Dim strDefFile As String, strResFile As String    Dim oFS As New Scripting.FileSystemObject    Dim fld As Folder    Dim fil As File    Dim ts As TextStream, tsDef As TextStream     strCmd = Command        Set ts = oFS.CreateTextFile(App.Path &amp;amp; "\lnklog.txt")        ts.WriteLine "Beginning execution at " &amp;amp; Date &amp;amp; " " &amp;amp; _        Time()    ts.WriteBlankLines 1    ts.WriteLine "Command line arguments to LINK call:"    ts.WriteBlankLines 1    ts.WriteLine "   " &amp;amp; strCmd    ts.WriteBlankLines 2        &lt;span style="color:#008000;"&gt;' Determine if .DEF file exists&lt;/span&gt;    &lt;span style="color:#008000;"&gt;'&lt;/span&gt;    &lt;span style="color:#008000;"&gt;' Extract path from first .obj argument&lt;/span&gt;    intPos = InStr(1, strCmd, ".OBJ", vbTextCompare)    strPath = Mid(strCmd, 2, intPos + 2)    intPos = InStrRev(strPath, "\")    strPath = Left(strPath, intPos - 1)    &lt;span style="color:#008000;"&gt;' Open folder&lt;/span&gt;    Set fld = oFS.GetFolder(strPath)        &lt;span style="color:#008000;"&gt;' Get files in folder&lt;/span&gt;    For Each fil In fld.Files       If UCase(oFS.GetExtensionName(fil)) = "DEF" Then          strDefFile = fil          SpecialLink = True       End If       If UCase(oFS.GetExtensionName(fil)) = "RES" Then          strResFile = fil          fResource = True       End If       If SpecialLink And fResource Then Exit For    Next           &lt;span style="color:#008000;"&gt;' Change command line arguments if flag set&lt;/span&gt;    If SpecialLink Then       &lt;span style="color:#008000;"&gt;' Determine contents of .DEF file&lt;/span&gt;       Set tsDef = oFS.OpenTextFile(strDefFile)       strFileContents = tsDef.ReadAll       If InStr(1, strFileContents, "CplApplet", _           vbTextCompare) &gt; 0 Then          fCPL = True       End If              &lt;span style="color:#008000;"&gt;' Add module definition before /DLL switch&lt;/span&gt;       intPos = InStr(1, strCmd, "/DLL", vbTextCompare)       If intPos &gt; 0 Then          strCmd = Left(strCmd, intPos - 1) &amp;amp; _                " /DEF:" &amp;amp; Chr(34) &amp;amp; strDefFile &amp;amp; Chr(34) &amp;amp; _                    " " &amp;amp; _                Mid(strCmd, intPos)       End If       &lt;span style="color:#008000;"&gt;' Include .RES file if one exists&lt;/span&gt;       If fResource Then          intPos = InStr(1, strCmd, "/ENTRY", vbTextCompare)          strCmd = Left(strCmd, intPos - 1) &amp;amp; Chr(34) &amp;amp; _              strResFile &amp;amp; _                   Chr(34) &amp;amp; " " &amp;amp; Mid(strCmd, intPos)       End If              &lt;span style="color:#008000;"&gt;' If Control Panel applet, change "DLL" extension to&lt;/span&gt;       &lt;span style="color:#008000;"&gt;' "CPL"&lt;/span&gt;       If fCPL Then          strCmd = Replace(strCmd, ".dll", ".cpl", 1, , _              vbTextCompare)       End If              &lt;span style="color:#008000;"&gt;' Write linker options to output file&lt;/span&gt;       ts.WriteLine "Command line arguments after " &amp;amp; _           "modification:"       ts.WriteBlankLines 1       ts.WriteLine "   " &amp;amp; strCmd       ts.WriteBlankLines 2    End If        ts.WriteLine "Calling LINK.EXE linker"    Shell "linklnk.exe " &amp;amp; strCmd    If Err.Number &lt;&gt; 0 Then       ts.WriteLine "Error in calling linker..."       Err.Clear    End If        ts.WriteBlankLines 1    ts.WriteLine "Returned from linker call"    ts.Close End Sub&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt; &lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;This program does roughly the same thing that Visual Basic does when it creates a DLL except it adds the /DEF flag to the command.&lt;li&gt;Compile the executable.&lt;/li&gt;&lt;li&gt;Rename the normal Visual Basic linker from Link.exe to LinkLnk.exe. On my system, it's at C:\Program Files\Microsoft Visual Studio\VB98.&lt;/li&gt;&lt;li&gt;Copy the executable program that you compiled into this directory and name it Link.exe. When Visual Basic links the DLL, it calls this program, which calls the renamed LinkLnk.exe program, adding the new /DEF parameter.&lt;/li&gt;&lt;li&gt;Export the DLL's routines.&lt;ol&gt;&lt;li&gt;Create a file named &lt;dllname&gt;.def where &lt;dllname&gt;is the name of the DLL. In this example, the DLL is named Fibonacci.dll so this file is called Fibonacci.def.&lt;/dllname&gt;&lt;/dllname&gt;&lt;/li&gt;&lt;li&gt;Add code to this file similar to the following:&lt;/li&gt;&lt;/ol&gt;&lt;/li&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt; &lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td background="http://www.vb-helper.com/computer_paper.jpg"&gt;&lt;pre&gt;&lt;span name="Courier New"  style="font-size:85%;"&gt;NAME MathLib LIBRARY MathMod DESCRIPTION "Add-on Library of Mathematical Routines" EXPORTS DllMain @1         Fibo @2&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt; &lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;This tells the linker about the main entry point DllMain and this example's function Fibo, both of which are created shortly.&lt;li&gt;Build the DLL.&lt;ol&gt;&lt;li&gt;Create a new ActiveX DLL project.&lt;/li&gt;&lt;li&gt;Leave the default Class1 class alone. You will not use it but Visual Basic needs it to it has something to compile into the ActiveX DLL.&lt;/li&gt;&lt;li&gt;Add a code module and insert this code:&lt;/li&gt;&lt;/ol&gt;&lt;/li&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt; &lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td background="http://www.vb-helper.com/computer_paper.jpg"&gt;&lt;pre&gt;&lt;span name="Courier New"  style="font-size:85%;"&gt;Public Const DLL_PROCESS_DETACH = 0 Public Const DLL_PROCESS_ATTACH = 1 Public Const DLL_THREAD_ATTACH = 2 Public Const DLL_THREAD_DETACH = 3  Public Function DllMain(hInst As Long, fdwReason As Long, _     lpvReserved As Long) As Boolean    Select Case fdwReason       Case DLL_PROCESS_DETACH          &lt;span style="color:#008000;"&gt;' No per-process cleanup needed&lt;/span&gt;       Case DLL_PROCESS_ATTACH          DllMain = True       Case DLL_THREAD_ATTACH          &lt;span style="color:#008000;"&gt;' No per-thread initialization needed&lt;/span&gt;       Case DLL_THREAD_DETACH          &lt;span style="color:#008000;"&gt;' No per-thread cleanup needed&lt;/span&gt;    End Select End Function  &lt;span style="color:#008000;"&gt;' Return a Fibonacci number.&lt;/span&gt; Public Function Fibo(ByVal N As Integer) As Long     If N &lt;= 1 Then         Fibo = 1     Else         Fibo = Fibo(N - 1) + Fibo(N - 2)     End If End Function&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt; &lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;DllMain is the DLL entry point. Fibo is a function that the DLL is exporting.&lt;li&gt;Compile the DLL. This should invoke the new Link.exe you built. If you look in that program's directory, you should see the log file it generates.&lt;/li&gt;&lt;li&gt;Build a test program to call the DLL.&lt;ol&gt;&lt;li&gt;Make a standard Visual Basic EXE.&lt;/li&gt;&lt;li&gt;Declare the routine exported by the DLL as in the following code:&lt;/li&gt;&lt;/ol&gt;&lt;/li&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt; &lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td background="http://www.vb-helper.com/computer_paper.jpg"&gt;&lt;pre&gt;&lt;span name="Courier New"  style="font-size:85%;"&gt;Private Declare Function Fibo Lib _     "C:\WebSite\HowToSrc\a2\Fibonacci.dll" (ByVal N As _     Integer) As Long&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt; &lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Insert the path to the DLL on your computer.&lt;li&gt;Run the program.&lt;p&gt;That should do it. Watch out for typos. If the .DEF file doesn't spell the function's name correctly, the DLL won't compile and the error messages are not very good.&lt;/p&gt;&lt;/li&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?t=funnblog-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=B00002S7HR&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=FFFFFF&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?t=funnblog-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0735615861&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=FFFFFF&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-5948164571609031349?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/K3OMwvE45uRBOn-yjTbveclhZBg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/K3OMwvE45uRBOn-yjTbveclhZBg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/K3OMwvE45uRBOn-yjTbveclhZBg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/K3OMwvE45uRBOn-yjTbveclhZBg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/Bk20WuRORAU/make-standard-dll.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2009/05/make-standard-dll.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-6598326462934871271</guid><pubDate>Wed, 29 Apr 2009 10:09:00 +0000</pubDate><atom:updated>2009-04-29T03:17:05.121-07:00</atom:updated><title>Creating PDF files in Visual Basic</title><description>PDF stands for portable document format. It is a format that every operating system on virtually any computer can read. Its become the default standard for transferring and viewing files in an easy way. The problem is that Visual Basic has no built in VB6 PDF functions. Because of this it has been very hard in the past to create PDF files from VB. Hopefully by the end of this Visual Basic Tutorial, PDF creation will be an easy thing for you to understand and do first hand.&lt;br /&gt;&lt;br /&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?t=funnblog-20&amp;o=1&amp;p=8&amp;l=as1&amp;asins=1890774456&amp;fc1=000000&amp;IS2=1&amp;lt1=_blank&amp;m=amazon&amp;lc1=0000FF&amp;bc1=000000&amp;bg1=FFFFFF&amp;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;PDF is a pretty complex data format. Because, of this usually you have to buy a third party control from someone who's invested a large amount of time in navigating through the PDF format and written an easy way for you to access it. This tutorial explains how you can create a simple PDF file without a third party control. If you run into limitations down the road you might still end up having to purchase a control. However, you will then know exactly what to look for in the control and know how much you are willing to spend to get the functionality you need. Hopefully you won't even need to purchase one. If there is something you are trying to do, add a comment here or in the forum, and we will try to help you with it&lt;br /&gt;&lt;br /&gt;Private Sub Command1_Click()&lt;br /&gt;    ' Create a simple PDF file using the mjwPDF class&lt;br /&gt;    Dim objPDF As New mjwPDF&lt;br /&gt;   &lt;br /&gt;    ' Set the PDF title and filename&lt;br /&gt;    objPDF.PDFTitle = "Test PDF Document"&lt;br /&gt;    objPDF.PDFFileName = App.Path &amp; "\test.pdf"&lt;br /&gt;   &lt;br /&gt;    ' We must tell the class where the PDF fonts are located&lt;br /&gt;    objPDF.PDFLoadAfm = App.Path &amp; "\Fonts"&lt;br /&gt;   &lt;br /&gt;    ' View the PDF file after we create it&lt;br /&gt;    objPDF.PDFView = True&lt;br /&gt;   &lt;br /&gt;    ' Begin our PDF document&lt;br /&gt;    objPDF.PDFBeginDoc&lt;br /&gt;        ' Set the font name, size, and style&lt;br /&gt;        objPDF.PDFSetFont FONT_ARIAL, 15, FONT_BOLD&lt;br /&gt;       &lt;br /&gt;        ' Set the text color&lt;br /&gt;        objPDF.PDFSetTextColor = vbBlue&lt;br /&gt;       &lt;br /&gt;        ' Set the text we want to print&lt;br /&gt;        objPDF.PDFTextOut _&lt;br /&gt;            "Hello, World! From mjwPDF (www.vb6.us)"&lt;br /&gt;   &lt;br /&gt;    ' End our PDF document (this will save it to the filename)&lt;br /&gt;    objPDF.PDFEndDoc&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?t=funnblog-20&amp;o=1&amp;p=42&amp;l=ur1&amp;category=books&amp;banner=1E7HZ0K3652JWXK4ME82&amp;f=ifr" width="234" height="60" scrolling="no" border="0" marginwidth="0" style="border:none;" frameborder="0"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;From http://www.vb6.us&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-6598326462934871271?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/YBUY32rj0wpH06aQUEKp_5mehQQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/YBUY32rj0wpH06aQUEKp_5mehQQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/YBUY32rj0wpH06aQUEKp_5mehQQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/YBUY32rj0wpH06aQUEKp_5mehQQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/yGzrHo7U5ik/creating-pdf-files-in-visual-basic.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2009/04/creating-pdf-files-in-visual-basic.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-5450375326558254495</guid><pubDate>Wed, 29 Apr 2009 09:59:00 +0000</pubDate><atom:updated>2009-04-29T03:07:51.836-07:00</atom:updated><title /><description>&lt;iframe src="http://rcm.amazon.com/e/cm?t=funnblog-20&amp;o=1&amp;p=13&amp;l=ur1&amp;category=books&amp;banner=1N4P1140VP34Z6816KR2&amp;f=ifr" width="468" height="60" scrolling="no" border="0" marginwidth="0" style="border:none;" frameborder="0"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-5450375326558254495?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Dpu9yPEhnfZmnSOeutvRBPuAVRI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Dpu9yPEhnfZmnSOeutvRBPuAVRI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Dpu9yPEhnfZmnSOeutvRBPuAVRI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Dpu9yPEhnfZmnSOeutvRBPuAVRI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/n5FVi5MNEzM/blog-post.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2009/04/blog-post.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-1929028422951597354</guid><pubDate>Wed, 22 Apr 2009 07:02:00 +0000</pubDate><atom:updated>2009-04-22T00:02:58.701-07:00</atom:updated><title>Arms Trouble</title><description>&lt;span xmlns=''&gt;&lt;p&gt;&lt;span style='color:#222222; font-family:Arial; font-size:10pt'&gt;A man went to visit his doctor. "Doc, my arm hurts bad. Can you check it out please?" the man pleads.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:#222222; font-family:Arial; font-size:10pt'&gt;The doctor rolls up the man's sleeve and suddenly hears the arm talk. "Hello, Doctor't; says the arm. "Could you lend me twenty bucks please? I'm desperate!"&lt;/span&gt;&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;&lt;br /&gt;				&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:#222222; font-family:Arial; font-size:10pt'&gt;"Aha!'' says the doctor.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:#222222; font-family:Arial; font-size:10pt'&gt;''I see the problem. Your arm is broke!"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-1929028422951597354?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/BO6tHfENzpJgf9EH5ILSRFnQbg4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BO6tHfENzpJgf9EH5ILSRFnQbg4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/BO6tHfENzpJgf9EH5ILSRFnQbg4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BO6tHfENzpJgf9EH5ILSRFnQbg4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/xVLqh4dMcUk/arms-trouble.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2009/04/arms-trouble.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-6890963890869392486</guid><pubDate>Wed, 22 Apr 2009 05:59:00 +0000</pubDate><atom:updated>2009-04-21T22:59:28.132-07:00</atom:updated><title>Menggunakan XP Style</title><description>&lt;span xmlns=''&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Prasetyo Priadi&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;prasetyopriadi@yahoo.co.id&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:blue; font-family:Arial; font-size:7pt'&gt;www.PrasetyoLabs.Co.Cc&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt; &lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;&lt;strong&gt;VB6 IDE&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Ketik script xml berikut dalam text editor (seperti notepad) lalu simpan file tersebut&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;dengan nama vb6.exe.manifest.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Sudah disertakan dalam file supplemen e-book IlmuKomputer ini. (vb6xpstyle.zip) atau&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Arial; font-size:7pt'&gt;&lt;span style='color:black'&gt;Alternative Download: &lt;/span&gt;&lt;span style='color:blue'&gt;http://www.ziddu.com/download/2658154/vb6_manifest.zip.html&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Setelah itu copy ke folder dimana visual basic 6.0 (vb6.exe) berada. Nah…, Sekarang&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;aktifkan aplikasi VB6 dan lihatlah IDE-nya sudah mengikuti style xp.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt; &lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;&amp;lt;?xml version="1.0" encoding="UTF-8" standalone="yes"?&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;&amp;lt;assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;&amp;lt;assemblyIdentity&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;version="1.0.0.0"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;processorArchitecture="X86"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;name="Microsoft.VB6.VBnetStyles"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;type="win32"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;/&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;&amp;lt;description&amp;gt;VBnet Manifest for VB6 IDE&amp;lt;/description&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;&amp;lt;dependency&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;&amp;lt;dependentAssembly&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;&amp;lt;assemblyIdentity&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;type="win32"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;name="Microsoft.Windows.Common-Controls"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;version="6.0.0.0"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;processorArchitecture="X86"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;publicKeyToken="6595b64144ccf1df"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;language="*"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;/&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;&amp;lt;/dependentAssembly&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;&amp;lt;/dependency&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;&amp;lt;/assembly&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:gray; font-family:Arial; font-size:5pt'&gt;Komunitas eLearning IlmuKomputer.Org&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:gray; font-family:Arial; font-size:5pt'&gt;Copyright © 2009 IlmuKomputer.Org&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt; &lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;&lt;strong&gt;VB6 Project&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Style Menggunakan XML&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Project Folder: vb6xpxmlext&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Jika sebelum Anda memasuki bab perihal pembahasan ini, yaitu dengan nekat telah mencopy&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;vb6.exe.manifest tadi ke folder project Anda dan me-rename-nya menjadi&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;project1.exe.manifest yang disandingkan dengan program Anda (project1.exe). Maka&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-size:7pt'&gt;&lt;span style='font-family:Arial'&gt;secara otomatis file hasil compile-an tadi &lt;/span&gt;&lt;span style='font-family:Arial'&gt;ngambek &lt;/span&gt;&lt;span style='font-family:Arial'&gt;dan pastinya tidak mau jalan.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Speaker Anda mungkin hanya akan berbunyi (teeng, teeng) setiap berulang kali Anda&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;mencoba mengaktifkan program project1.exe Anda dan tidak tampil apa-apa. Lebih&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-size:7pt'&gt;&lt;span style='font-family:Arial'&gt;buruk lagi muncul kotak dialog: &lt;/span&gt;&lt;span style='font-family:Arial'&gt;error, please reinstall this program and bla…bla. bla..&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Coba tebak apa yang salah? Yup.., benar XP Manifest tadi belum di inisialisasikan. Lalu&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;bagaimanakah cara membuat kode untuk menginisialisasikannya? Ya.. ya.. itu cukup&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;mudah. Tinggal ikuti prosedur dibawah ini.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-size:7pt'&gt;&lt;span style='font-family:Arial'&gt;1. Bukalah proyek baru menggunakan &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Standar.Exe&lt;/span&gt;&lt;span style='font-family:Arial'&gt;.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;2. Double klik Form1, dan ketikan kode berikut pada halaman kode.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-size:7pt'&gt;&lt;span style='font-family:Arial'&gt;3. Dari menu utama pilih menu &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Project &lt;/span&gt;&lt;span style='font-family:Arial'&gt;_ &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Add Module&lt;/span&gt;&lt;span style='font-family:Arial'&gt;. Pada kotak dialog Add&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-size:7pt'&gt;&lt;span style='font-family:Arial'&gt;Module klik tombol &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Open&lt;/span&gt;&lt;span style='font-family:Arial'&gt;. Atau dengan double klik icon &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Module&lt;/span&gt;&lt;span style='font-family:Arial'&gt;.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;4. Pada halaman kode Module1 ketikan kode berikut ini.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;5. Kembali ke Form1, tambahkan sebuah objek command button.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Private Sub &lt;/span&gt;&lt;span style='color:black'&gt;Form_Initialize()&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;InitCommonControls&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:navy; font-family:Arial; font-size:5pt'&gt;End Sub&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Public Declare Function &lt;/span&gt;&lt;span style='color:black'&gt;InitCommonControls &lt;/span&gt;&lt;span style='color:navy'&gt;Lib &lt;/span&gt;&lt;span style='color:black'&gt;"COMCTL32.DLL" _&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:black'&gt;() &lt;/span&gt;&lt;span style='color:navy'&gt;As Long&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt; &lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;6. Compile project Anda.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;7. Pastikan Anda sudah membuat project1.exe.manifest pada folder hasil compile. Nama&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;manifest yaitu mengikuti nama executable hasil kompilasi misal program Anda&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Aqua.exe maka nama manifest-nya adalah Aqua.exe.manifest.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;8. Jalankan program. Lihatlah program berjalan dengan normal dan tentunya dengan&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;style XP, atau style theme xp yang sedang Anda gunakan.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;VB6 Project&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Style Menggunakan XML Autowrite&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Project Folder: vb6xpxmlxto&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Apabila Anda diserang badai kemalasan, untuk men-copy file manifest ke setiap folder&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;project Anda atau barangkali untuk menangulangi file manifest di hapus oleh pengguna&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;program kita. Maka, bisa Anda gunakan module xpmanifest.bas (sudah saya modifikasi&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;sedikit agar setiap selesai inisial xp style maka file bla..bla..bla.exe.xpmanifest akan&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;secara otomatis dihapus).&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Loh apa ndak sulit buatnya? Tidak kok, tinggal ikuti saja.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-size:7pt'&gt;&lt;span style='font-family:Arial'&gt;1. Bukalah proyek baru menggunakan &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Standar.Exe&lt;/span&gt;&lt;span style='font-family:Arial'&gt;.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;2. Double klik Form1, dan ketikan kode berikut pada halaman kode.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Private Sub &lt;/span&gt;&lt;span style='color:black'&gt;Form_Initialize()&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;xpManifestInitial&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:navy; font-family:Arial; font-size:5pt'&gt;End Sub&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt; &lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-size:7pt'&gt;&lt;span style='font-family:Arial'&gt;3. Dari menu utama pilih menu &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Project &lt;/span&gt;&lt;span style='font-family:Arial'&gt;_ &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Add Module&lt;/span&gt;&lt;span style='font-family:Arial'&gt;. Pada kotak dialog Add&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-size:7pt'&gt;&lt;span style='font-family:Arial'&gt;Module klik tombol &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Open&lt;/span&gt;&lt;span style='font-family:Arial'&gt;. Atau dengan double klik icon &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Module&lt;/span&gt;&lt;span style='font-family:Arial'&gt;.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;4. Pada halaman kode Module1 ketikan kode berikut ini.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt; &lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:green; font-family:Arial; font-size:5pt'&gt;'XP Manifest for visual basic 6.0&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:green; font-family:Arial; font-size:5pt'&gt;'Type External Autowrite &amp;amp; Stleath&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Private Type &lt;/span&gt;&lt;span style='color:black'&gt;tagInitCommonControlsEx&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:black'&gt;lngSize &lt;/span&gt;&lt;span style='color:navy'&gt;As Long&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:black'&gt;lngICC &lt;/span&gt;&lt;span style='color:navy'&gt;As Long&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:navy; font-family:Arial; font-size:5pt'&gt;End Type&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Private Declare Function &lt;/span&gt;&lt;span style='color:black'&gt;InitCommonControlsEx &lt;/span&gt;&lt;span style='color:navy'&gt;Lib &lt;/span&gt;&lt;span style='color:black'&gt;"comctl32.dll"&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:black'&gt;(iccex As tagInitCommonControlsEx) &lt;/span&gt;&lt;span style='color:navy'&gt;As Boolean&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Private Const &lt;/span&gt;&lt;span style='color:black'&gt;ICC_USEREX_CLASSES = &amp;amp;H200&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Public Sub &lt;/span&gt;&lt;span style='color:black'&gt;xpManifestInitial()&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:navy; font-family:Arial; font-size:5pt'&gt;On Error Resume Next&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Dim &lt;/span&gt;&lt;span style='color:black'&gt;F &lt;/span&gt;&lt;span style='color:navy'&gt;As String&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;F = App.Path &amp;amp; "\" &amp;amp; App.EXEName &amp;amp; ".exe.manifest"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;If &lt;/span&gt;&lt;span style='color:black'&gt;Dir(F) = "" Then&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Open &lt;/span&gt;&lt;span style='color:black'&gt;F &lt;/span&gt;&lt;span style='color:navy'&gt;For Output As &lt;/span&gt;&lt;span style='color:black'&gt;#3&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, "&amp;lt;?xml version=" &amp;amp; Chr(&amp;amp;H22) &amp;amp; "1.0" &amp;amp; _&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;Chr(&amp;amp;H22) &amp;amp; " encoding=" &amp;amp; Chr(&amp;amp;H22) &amp;amp; "UTF-8" &amp;amp; _&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;Chr(&amp;amp;H22) &amp;amp; " standalone=" &amp;amp; Chr(&amp;amp;H22) &amp;amp; "yes" &amp;amp; _&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;Chr(&amp;amp;H22) &amp;amp; " ?&amp;gt;"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, "&amp;lt;assembly xmlns=" &amp;amp; Chr(&amp;amp;H22) &amp;amp; _&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;"urn:schemas-microsoft-com:asm.v1" &amp;amp; Chr(&amp;amp;H22) &amp;amp; _&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;" manifestVersion=" &amp;amp; Chr(&amp;amp;H22) &amp;amp; "1.0" &amp;amp; Chr(&amp;amp;H22) &amp;amp; "&amp;gt;"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, vbTab &amp;amp; "&amp;lt;assemblyIdentity"&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, vbTab &amp;amp; vbTab &amp;amp; "version=" &amp;amp; Chr(&amp;amp;H22) &amp;amp; _&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;"1.0.0.0" &amp;amp; Chr(&amp;amp;H22)&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, vbTab &amp;amp; vbTab &amp;amp; "processorArchitecture=" &amp;amp; _&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;Chr(&amp;amp;H22) &amp;amp; "X86" &amp;amp; Chr(&amp;amp;H22)&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, vbTab &amp;amp; vbTab &amp;amp; "name=" &amp;amp; Chr(&amp;amp;H22) &amp;amp; _&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;App.CompanyName &amp;amp; "." &amp;amp; App.ProductName &amp;amp; "." &amp;amp; _&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;App.EXEName &amp;amp; Chr(&amp;amp;H22)&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, vbTab &amp;amp; vbTab &amp;amp; "type=" &amp;amp; Chr(&amp;amp;H22) &amp;amp; _&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;"win32" &amp;amp; Chr(&amp;amp;H22) &amp;amp; " /&amp;gt;"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, vbTab &amp;amp; "&amp;lt;description&amp;gt;" &amp;amp; App.Comments &amp;amp; _&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;"&amp;lt;/description&amp;gt;"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, vbTab &amp;amp; "&amp;lt;dependency&amp;gt;"&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, vbTab &amp;amp; "&amp;lt;dependentAssembly&amp;gt;"&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, vbTab &amp;amp; "&amp;lt;assemblyIdentity"&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, vbTab &amp;amp; vbTab &amp;amp; "type=" &amp;amp; Chr(&amp;amp;H22) &amp;amp; _&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;"win32" &amp;amp; Chr(&amp;amp;H22)&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, vbTab &amp;amp; vbTab &amp;amp; "name=" &amp;amp; Chr(&amp;amp;H22) &amp;amp; _&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;"Microsoft.Windows.Common-Controls" &amp;amp; Chr(&amp;amp;H22)&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, vbTab &amp;amp; vbTab &amp;amp; "version=" &amp;amp; Chr(&amp;amp;H22) _&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;&amp;amp; "6.0.0.0" &amp;amp; Chr(&amp;amp;H22)&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, vbTab &amp;amp; vbTab &amp;amp; "processorArchitecture=" &amp;amp; _&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;Chr(&amp;amp;H22) &amp;amp; "X86" &amp;amp; Chr(&amp;amp;H22)&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, vbTab &amp;amp; vbTab &amp;amp; "publicKeyToken=" &amp;amp; _&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;Chr(&amp;amp;H22) &amp;amp; "6595b64144ccf1df" &amp;amp; Chr(&amp;amp;H22)&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, vbTab &amp;amp; vbTab &amp;amp; "language=" &amp;amp; Chr(&amp;amp;H22) &amp;amp; _&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;"*" &amp;amp; Chr(&amp;amp;H22) &amp;amp; " /&amp;gt;"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, vbTab &amp;amp; "&amp;lt;/dependentAssembly&amp;gt;"&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, vbTab &amp;amp; "&amp;lt;/dependency&amp;gt;"&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, "&amp;lt;/assembly&amp;gt;"&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Print &lt;/span&gt;&lt;span style='color:black'&gt;#3, ""&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Close &lt;/span&gt;&lt;span style='color:black'&gt;#3&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;Shell App.Path &amp;amp; "\" &amp;amp; App.EXEName &amp;amp; ".exe", vbNormalFocus&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;DoEvents&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:navy; font-family:Arial; font-size:5pt'&gt;End&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:navy; font-family:Arial; font-size:5pt'&gt;End If&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt; &lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;5. Kembali ke Form1, tambahkan sebuah objek command button.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;6. Compile project Anda. Jalankan dan lihatlah hasilnya.  Dengan cara ini Anda tak perlu membuat file manifest dengan cara manual karena file&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;manifest akan dibuat dan kemudian di hapus oleh program. Lebih tepatnya pada sub xpManifestInitial yang dipanggil pada Form_Initialize().&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt; &lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;&lt;strong&gt;VB6 Project&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Style Menggunakan Resource&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Project Folder: vb6xpxmlres&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Jika boleh berkata jujur, sebenarnya saya tahu cara ini saat sebelum mendekompilasi&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;program "123 Flash Compressor" menggunakan VBReformer. Pertama saya lihat&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;program tersebut dengan PEiD ternyata diketahui program tersebut ditulis menggunakan&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;VB6. Saya lihat stylenya kok memakai XP, tetapi tidak ada file manifest-nya. Saya&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;berpikir, barangkali menggunakan resource dan ternyata benar saat saya buka dengan&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-size:7pt'&gt;&lt;span style='font-family:Arial'&gt;Resource Hacker. Langsung saja saya klik menu Action &lt;/span&gt;&lt;span style='font-family:Arial'&gt;_ &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Save Resource As a *.res&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;File. Saya coba di VB6 tentunya dengan inisialisasi komponen comctl32.dll dan berhasil.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Dim &lt;/span&gt;&lt;span style='color:black'&gt;Ticce &lt;/span&gt;&lt;span style='color:navy'&gt;As &lt;/span&gt;&lt;span style='color:black'&gt;tagInitCommonControlsEx&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;Ticce.lngSize = LenB(iccex)&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;Ticce.lngICC = ICC_USEREX_CLASSES&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;InitCommonControlsEx Ticce&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;Kill App.Path &amp;amp; "\" &amp;amp; App.EXEName &amp;amp; ".exe.manifest"&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:navy; font-family:Arial; font-size:5pt'&gt;On Error GoTo 0&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:navy; font-family:Arial; font-size:5pt'&gt;End Sub&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Langkah-langkah cara membuatnya adalah sebagai berikut.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-size:7pt'&gt;&lt;span style='font-family:Arial'&gt;1. Bukalah proyek baru menggunakan &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Standar.Exe&lt;/span&gt;&lt;span style='font-family:Arial'&gt;.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;2. Double klik Form1, dan ketikan kode berikut pada halaman kode.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-size:7pt'&gt;&lt;span style='font-family:Arial'&gt;3. Dari menu utama pilih menu &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Project &lt;/span&gt;&lt;span style='font-family:Arial'&gt;_ &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Add Module&lt;/span&gt;&lt;span style='font-family:Arial'&gt;. Pada kotak dialog Add&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-size:7pt'&gt;&lt;span style='font-family:Arial'&gt;Module klik tombol &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Open&lt;/span&gt;&lt;span style='font-family:Arial'&gt;. Atau dengan double klik icon &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Module&lt;/span&gt;&lt;span style='font-family:Arial'&gt;.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;4. Pada halaman kode Module1 ketikan kode berikut ini.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-size:7pt'&gt;&lt;span style='font-family:Arial'&gt;5. Dari menu utama pilih menu &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Project &lt;/span&gt;&lt;span style='font-family:Arial'&gt;_ &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Add File… (Ctrl + D)&lt;/span&gt;&lt;span style='font-family:Arial'&gt;. Cari file&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-size:7pt'&gt;&lt;span style='font-family:Arial'&gt;xpmanifest.res &lt;/span&gt;&lt;span style='font-family:Arial'&gt;(sudah disertakan dalam file supplement e-Book ini).&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;6. Kembali ke Form1, tambahkan sebuah objek command button.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;7. Compile project Anda.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;8. Jalankan program. Lihatlah program berjalan dengan normal dan tentunya dengan&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;style XP, atau style theme xp yang sedang Anda gunakan.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Dengan cara ini Anda tak lagi perlu membuat xpmanifest secara manual ataupun secara&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;automatis menggunakan kode program, karena xpmanifest telah tersedia sebagai resource&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;dengan nama file xpmanifest.res.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Private Sub &lt;/span&gt;&lt;span style='color:black'&gt;Form_Initialize()&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;InitCommonControls&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:navy; font-family:Arial; font-size:5pt'&gt;End Sub&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Public Declare Function &lt;/span&gt;&lt;span style='color:black'&gt;InitCommonControls &lt;/span&gt;&lt;span style='color:navy'&gt;Lib &lt;/span&gt;&lt;span style='color:black'&gt;"COMCTL32.DLL" _&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:black'&gt;() &lt;/span&gt;&lt;span style='color:navy'&gt;As Long&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt; &lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;&lt;strong&gt;VB6 Project&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Style Menggunakan XML&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Project Folder: vb6xpvoodo&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Dengan menggunakan module ModXP.bas yang ditulis oleh Voodoo Attack!!. Kita dapat&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;menggunakan XP Style tidak hanya untuk aplikasi yang ditulis dengan Visual Basic 6.0&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;tetapi juga Visual Basic 5.0&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;Cara membuatnya adalah sebagai berikut.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-size:7pt'&gt;&lt;span style='font-family:Arial'&gt;1. Bukalah proyek baru menggunakan &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Standar.Exe&lt;/span&gt;&lt;span style='font-family:Arial'&gt;.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;2. Double klik Form1, dan ketikan kode berikut pada halaman kode.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-size:7pt'&gt;&lt;span style='font-family:Arial'&gt;3. Dari menu utama pilih menu &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Project &lt;/span&gt;&lt;span style='font-family:Arial'&gt;_ &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Add Module&lt;/span&gt;&lt;span style='font-family:Arial'&gt;. Klik tab &lt;/span&gt;&lt;span style='font-family:Arial'&gt;Existing &lt;/span&gt;&lt;span style='font-family:Arial'&gt;. Carilah file&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-size:7pt'&gt;&lt;span style='font-family:Arial'&gt;ModXP.bas &lt;/span&gt;&lt;span style='font-family:Arial'&gt;(sudah disertakan dalam file supplemen e-Book ini). Dan klik open.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;4. Kembali ke Form1, tambahkan sebuah objek command button.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;5. Compile project Anda.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='color:black; font-family:Arial; font-size:7pt'&gt;6. Jalankan program. Lihatlah program berjalan dengan normal dan tentunya dengan style XP, atau style theme xp yang sedang Anda gunakan. ModXP.bas XPStyle Module yang saya pergunakan adalah versi 2.00&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='font-family:Arial; font-size:5pt'&gt;&lt;span style='color:navy'&gt;Private Sub &lt;/span&gt;&lt;span style='color:black'&gt;Form_Initialize()&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:black; font-family:Arial; font-size:5pt'&gt;XPStyle&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='margin-left: 9pt'&gt;&lt;span style='color:navy; font-family:Arial; font-size:5pt'&gt;End Sub&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-6890963890869392486?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Rv5r5HqTIUd--Q67wo79QgB1Mqs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Rv5r5HqTIUd--Q67wo79QgB1Mqs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Rv5r5HqTIUd--Q67wo79QgB1Mqs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Rv5r5HqTIUd--Q67wo79QgB1Mqs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/r23ajjozv-o/menggunakan-xp-style.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2009/04/menggunakan-xp-style.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-4595938062345401870</guid><pubDate>Wed, 22 Apr 2009 03:11:00 +0000</pubDate><atom:updated>2009-04-21T20:28:04.892-07:00</atom:updated><title>E-Book Gratis dengan Bahasa indonesia</title><description>&lt;span class="Apple-style-span" style="font-size: small;"&gt;Teman-teman programmer VB 6 maupun pemula di VB 6.&lt;br /&gt;Saya menemukan beberapa Ebook gratis untuk Tutorial  Basic Programmer ataupun Expert Programmer.&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Berikut Link-link Ebook tersebut:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="text-decoration: none;"&gt;&lt;ul&gt;&lt;li&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.snapdrive.net/files/568979/Visual%20Basic.pdf" style=""&gt;&lt;span class="Apple-style-span" style="text-decoration: none;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;http://www.snapdrive.net/files/568979/Visual%20Basic.pdf&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.ilmukomputer.org/2006/10/27/tutorial-vb-60"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;http://www.ilmukomputer.org/2006/10/27/tutorial-vb-60&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.geocities.com/vb_wardana/vb6/Pengenalan.pdf"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;http://www.geocities.com/vb_wardana/vb6/Pengenalan.pdf&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;a href="http://www.oke.or.id/tutorial/Visual%20Basic%201.pdf"&gt;http://www.oke.or.id/tutorial/Visual%20Basic%201.pdf&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;Saya akan  sambung lagi jika ada yang baru.&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-4595938062345401870?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/4vr5XA8ffhFGE3BDVHdATrXNbZ4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4vr5XA8ffhFGE3BDVHdATrXNbZ4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/4vr5XA8ffhFGE3BDVHdATrXNbZ4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4vr5XA8ffhFGE3BDVHdATrXNbZ4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/hgEvOe0BZ7A/e-book-gratis-dengan-bahasa-indonesia.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><media:content url="http://feedproxy.google.com/~r/VisualBasicProgrammer/~5/NLwOa_Lr_rc/Visual%20Basic.pdf" fileSize="1865037" type="application/pdf; charset=UTF-8" /><itunes:explicit>no</itunes:explicit><itunes:subtitle>Teman-teman programmer VB 6 maupun pemula di VB 6. Saya menemukan beberapa Ebook gratis untuk Tutorial  Basic Programmer ataupun Expert Programmer.Berikut Link-link Ebook tersebut:http://www.snapdrive.net/files/568979/Visual%20Basic.pdfhttp://www.ilmukomp</itunes:subtitle><itunes:author>noreply@blogger.com (Kaleng)</itunes:author><itunes:summary>Teman-teman programmer VB 6 maupun pemula di VB 6. Saya menemukan beberapa Ebook gratis untuk Tutorial  Basic Programmer ataupun Expert Programmer.Berikut Link-link Ebook tersebut:http://www.snapdrive.net/files/568979/Visual%20Basic.pdfhttp://www.ilmukomputer.org/2006/10/27/tutorial-vb-60http://www.geocities.com/vb_wardana/vb6/Pengenalan.pdfhttp://www.oke.or.id/tutorial/Visual%20Basic%201.pdf Saya akan  sambung lagi jika ada yang baru.</itunes:summary><feedburner:origLink>http://programmervb.blogspot.com/2009/04/e-book-gratis-dengan-bahasa-indonesia.html</feedburner:origLink><enclosure url="http://feedproxy.google.com/~r/VisualBasicProgrammer/~5/NLwOa_Lr_rc/Visual%20Basic.pdf" length="1865037" type="application/pdf; charset=UTF-8" /><feedburner:origEnclosureLink>http://www.snapdrive.net/files/568979/Visual%20Basic.pdf</feedburner:origEnclosureLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-8274172486589753171</guid><pubDate>Mon, 23 Feb 2009 06:54:00 +0000</pubDate><atom:updated>2009-02-22T22:58:18.196-08:00</atom:updated><title>Get disk serial number using the file system object</title><description>Description: This VB code (function) enables you to retrieve the hard disk (partition) serial number. This serial number is generated by Windows (or DOS) when you format a disk partition.&lt;br /&gt;&lt;br /&gt;Keywords: Disk Serial Number, Hard Disk Serial, Drive Serial Number 'Note: This code requires a referecne to the Microsoft Scripting Runtime library (SCRRUN.DLL)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Private Sub Form_Load()&lt;/span&gt;&lt;span style="color:#33cc00;"&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;    'Show drive serial number for the current drive&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;    MsgBox " Drive serial number for " &amp;amp; Left(App.Path, 1) &amp;amp; ": " &amp;amp; GetDriveSerialNumber&lt;br /&gt;    End&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;Public Function GetDriveSerialNumber(Optional ByVal DriveLetter As String) As Long&lt;br /&gt;    Dim fso As Object, Drv As Object&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#33cc00;"&gt;    'Create a FileSystemObject object&lt;br /&gt;&lt;/span&gt;    Set fso = CreateObject("Scripting.FileSystemObject")&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#33cc00;"&gt;    'Assign the current drive letter if not specified&lt;/span&gt;&lt;br /&gt;    If DriveLetter &lt;&gt; "" Then&lt;br /&gt;        Set Drv = fso.GetDrive(DriveLetter)&lt;br /&gt;    Else&lt;br /&gt;        Set Drv = fso.GetDrive(fso.GetDriveName(App.Path))&lt;br /&gt;    End If&lt;br /&gt;&lt;br /&gt;    With Drv&lt;br /&gt;    If .IsReady Then&lt;br /&gt;        DriveSerial = Abs(.SerialNumber)&lt;br /&gt;    Else '"Drive Not Ready!"&lt;br /&gt;        DriveSerial = -1&lt;br /&gt;    End If&lt;br /&gt;    End With&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#33cc00;"&gt;    'Clean up&lt;br /&gt;&lt;/span&gt;    Set Drv = Nothing&lt;br /&gt;    Set fso = Nothing&lt;br /&gt;&lt;br /&gt;    GetDriveSerialNumber = DriveSerial&lt;br /&gt;End Function&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-8274172486589753171?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Jxk7bxizgMmkjDC8-ikDf2PLKI0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Jxk7bxizgMmkjDC8-ikDf2PLKI0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Jxk7bxizgMmkjDC8-ikDf2PLKI0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Jxk7bxizgMmkjDC8-ikDf2PLKI0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/2Ivj_dyn0RU/get-disk-serial-number-using-file.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2009/02/get-disk-serial-number-using-file.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-5329987957262675038</guid><pubDate>Mon, 25 Aug 2008 02:20:00 +0000</pubDate><atom:updated>2008-08-24T19:20:40.627-07:00</atom:updated><title /><description>&lt;span xmlns=''&gt;&lt;p&gt;&lt;span style='font-family:Times New Roman; font-size:13pt'&gt;&lt;strong&gt;&lt;span style='color:blue'&gt;Apa itu ERP ? Apa yang dapat dilakukan ERP ?&lt;/span&gt;&lt;br /&gt;					&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;&lt;em&gt;Enterprise Resource Planning&lt;/em&gt; yang lebih di kenal ERP , kalau kita artikan secara kata per kata dan coba di cari di kamus  adalah  sebagai berikut:&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span style='font-size:12pt'&gt;&lt;span style='font-family:Times New Roman'&gt;Enterprise &lt;/span&gt;&lt;span style='font-family:Wingdings'&gt;à&lt;/span&gt;&lt;span style='font-family:Times New Roman'&gt;&lt;br /&gt;						&lt;/span&gt;&lt;/span&gt;plural: &lt;em&gt;enterprises Arti : &lt;/em&gt;&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;keberanian berusaha, kegiatan memulai usaha&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style='font-size:12pt'&gt;&lt;span style='font-family:Times New Roman'&gt;Resource &lt;/span&gt;&lt;span style='font-family:Wingdings'&gt;à&lt;/span&gt;&lt;span style='font-family:Times New Roman'&gt;&lt;br /&gt;						&lt;/span&gt;&lt;/span&gt;plural: &lt;em&gt;resources Arti: &lt;/em&gt;akal, sumber, sumber penghasilan&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;&lt;br /&gt;					&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style='font-size:12pt'&gt;&lt;span style='font-family:Times New Roman'&gt;Planning &lt;/span&gt;&lt;span style='font-family:Wingdings'&gt;à&lt;/span&gt;&lt;span style='font-family:Times New Roman'&gt;&lt;br /&gt;						&lt;/span&gt;&lt;/span&gt;present: &lt;em&gt;plans.  &lt;/em&gt;present participle: &lt;em&gt;planning Arti: &lt;/em&gt;merencanakan, rencana, perencanaan, berencana&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;&lt;br /&gt;					&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;Jika dirangkaikan adalah "Rencana Sumber Penghasilan" ? atau "Rencana Untuk Membuat Sumber Pengahasilan"?  atau "Merencanakan Sumber Penghasilan"?? ga Nyambung!! &lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;berbeda jauh artinya dengan sebenar nya. Gua coba juga bertanya dengan teman sekerja di kantor" apa sih ERP ?" . Ada banyak jawaban seperti " ERP itu aplikasi (Software)" dan ada lagi " ERP itu punya orang IT dan sulit sekali".&lt;br/&gt;gw juga mencoba mencari definisi yang tepat dengan cari di artikel , internet dan &lt;em&gt;text book&lt;/em&gt; tapi semua nya memberikan definisi yang berbeda dengan berbagai sudut pandang tapi dapat secara garis besar mempunyai arti hampir sama. &lt;br/&gt;ERP itu merupakan sistim terintegrasi yang mempunyai tujuan merangkum bisnis proses yang ada sehingga menjadi satu kolaborasi yang effisien dan effektif dan sistim tersebut di dukung dengan teknologi informasi dan dapat menghasilkan informasi yang menunjang perusahaan menjadi lebih kompetitif.&lt;br/&gt;Berikut contoh yang dapat ERP lakukan seperti dalam kasus di produksi . dimana antara jadwal produksi dengan bahan yang ada dan kebutuhan produk yang akan diproduksi dimana ketiga proses itu harus dilakukan secara effisien dan effektif. contoh effisien adalah dari segi waktu dan effektif dari segi optimasi dalam proses produksi dimana sebagai contoh meminimalkan WIP. Ini hanya sebagian contoh dari salah satu tugas ERP.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt; &lt;/p&gt;&lt;p&gt;&lt;a href='http://sistemterintegrasi.blogspot.com/2006/12/critical-succes-factor-untuk.html'&gt;&lt;span style='color:blue; font-family:Times New Roman; font-size:13pt'&gt;&lt;strong&gt;Critical Succes Factor untuk implemantasi ERP&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style='font-family:Times New Roman; font-size:13pt'&gt;&lt;strong&gt;&lt;br /&gt;					&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;Sukses adalah hasil dari suatu strategi dan usaha , tidak datang dengan kebetulan . suskes dalam meng ' Go Live' ERP juga perlu strategi dan usaha . banyak tulisan mengenai &lt;em&gt;critical succes factor&lt;/em&gt; untuk mengimplementasikan sebuah &lt;em&gt;enterprise system&lt;/em&gt;. saya coba melihat salah satu artikel yg ditulis oleh Anne Parr dan Graeme Shanks di &lt;em&gt;Jurnal of Information Technology &lt;/em&gt;(2000) 15 . Didalam jurnal tersebut point - point &lt;em&gt;Critical Success Factor&lt;/em&gt; (CSF) untuk implementasi ERP adalah :&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;&lt;em&gt;Management support&lt;/em&gt;, dukungan dan komitmen dari top management sangat di butuhkan dari sebelum project dimulai sampai setelah project selesai atau sudah . kenapa saya menuliskan sampai setelah project selesai , ini di perlukan agar semangat pengembangan dan ke ikut sertaan dari semua yg terlibat terus berakar.&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;Keterlibatan orang - orang yg berkompeten dalam bidang nya secara &lt;em&gt;full time&lt;/em&gt; .Kenapa harus &lt;em&gt;full time&lt;/em&gt; yaitu agar lebih fokus.&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;Diberikan wewenang untuk memberikan keputusan, wewenang disini berarti di berikan nya delegasi untuk dapat memutuskan sehingga keputusan yang akan lebih cepat tapi harus dilakukan oleh orang yang kompeten. &lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;&lt;em&gt;Delivered date&lt;/em&gt;, Jadwal yang realisitis dan tetap harus selalu di monitor perkembangan dan kemajuannya&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;&lt;em&gt;Champion&lt;/em&gt;, agen perubahan dimana selalu ber ' promosi ' mengenai sistem yang baru dan bertugas untuk sebagai 'pendengar' sehingga menjadi koreksi dalam implementasi.&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;&lt;em&gt;Vanila&lt;/em&gt; ERP, istilah saja agar implementasi ERP hanya melakukan sedikit &lt;em&gt;Customize&lt;/em&gt;. kenapa sedikit karena untuk memudahkan upgarade software. &lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;Ruang lingkup yang tidak terlalu besar, sangat baik dilakukan dengan ruang lingkup yg tidak terlalu besar dahulu agar lebih effektif &amp;amp; effisien . Hindari "Big Bang" project&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;Definisi tujuan dan ruang lingkup, ini salah satu terpenting karena &lt;em&gt;Steering Committee&lt;/em&gt; mendefinisikan tujuan &amp;amp; ruang lingkup yang jelas. ini sebenar nya merupakan inti dari mau kemana kita nanti nya. ini semua harus benar - benar di pahami oleh seluruh anggota project. Apabila gagal mendifinisikan secara benar maka biasa nya project akan menjadi terlambat dan akhir nya ujung - ujung nya cost nya juga naik&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;Komposisi team yang seimbang, komposisi yang seimbang dari bisnis analis, &lt;em&gt;technical expert&lt;/em&gt; dan user yang ikut dalam implementasi dari internal dan external perusahaan&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style='font-family:Times New Roman; font-size:12pt'&gt;&lt;em&gt;Commitment to change,&lt;/em&gt; ketekunan dan ketabahan dalam menghadapi masalah yang terjadi selama implementasi. &lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-5329987957262675038?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/oZG48NYaPQqHHc66-qo6El55M1E/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oZG48NYaPQqHHc66-qo6El55M1E/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/oZG48NYaPQqHHc66-qo6El55M1E/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oZG48NYaPQqHHc66-qo6El55M1E/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/nRbZYbqEHsU/apa-itu-erp-apa-yang-dapat-dilakukan.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/08/apa-itu-erp-apa-yang-dapat-dilakukan.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-8244656741622329339</guid><pubDate>Wed, 16 Jul 2008 10:38:00 +0000</pubDate><atom:updated>2008-07-16T03:38:06.631-07:00</atom:updated><title>Letter from Banta Singh to Bill Gates</title><description>&lt;span xmlns=''&gt;&lt;p&gt;&lt;span style='font-family:Arial; font-size:9pt'&gt;Subject: Problems with my new computer&lt;br/&gt;&lt;br/&gt;Dear Mr Bill Gates,&lt;br/&gt;We have bought a computer for our home and we have found some problems, which I want to bring to your notice&lt;br/&gt;&lt;br/&gt;1. There is a button 'start' but there is no 'stop' button. We request you to check this.&lt;br/&gt;2. We find there is 'Run' in the menu. We request you to change that to 'sit', so that we can click that by sitting.&lt;br/&gt;3. One doubt is whether any 're-scooter' is available in system? I find only 're-cycle', but I own a scooter at home.&lt;br/&gt;4. There is 'Find' button but it is not working properly. My wife lost the door key and we tried a lot trace the key with this ' find' button, but was unable to trace. Please rectify this problem.&lt;br/&gt;5. My child learnt 'Microsoft word' now he wants to learn 'Microsoft sentence', so when you will provide that?&lt;br/&gt;6. I bought computer, CPU, mouse and keyboard, but there is only one icon which shows 'My Computer'; when you will provide the remaining items?&lt;br/&gt;7. It is surprising that windows says 'My Pictures' but there is not even a single photo of mine. So when will you keep my photo in that.&lt;br/&gt;8. There is 'Microsoft Office' what about 'Microsoft Home'? since I use the PC at home only.&lt;br/&gt;9. You provided 'My Recent Documents'. When you will provide 'My Past Documents'?&lt;br/&gt;10. You provide 'My Network Places'. For God Sake! Please do not provide 'My Secret Places'. I do not want to let my wife know where I go after my office hours.&lt;br/&gt;&lt;br/&gt;Regards,&lt;br/&gt;Banta Singh&lt;br/&gt;&lt;br/&gt;&lt;em&gt;Last one to Mr Bill Gates :&lt;br/&gt;Sir, how is it that your name is Gates but you are selling WINDOWS?&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-8244656741622329339?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/icjd0hbl_459pGXpf0nA52W-DiE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/icjd0hbl_459pGXpf0nA52W-DiE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/icjd0hbl_459pGXpf0nA52W-DiE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/icjd0hbl_459pGXpf0nA52W-DiE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/w4Er8rIOqw4/letter-from-banta-singh-to-bill-gates.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/07/letter-from-banta-singh-to-bill-gates.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-4664201153807850613</guid><pubDate>Wed, 16 Jul 2008 07:20:00 +0000</pubDate><atom:updated>2008-07-16T00:20:55.697-07:00</atom:updated><title /><description>&lt;span xmlns=''&gt;&lt;p style='background: white'&gt;&lt;span style='font-family:Helvetica; font-size:9pt'&gt;&lt;em&gt;This article originally appeared in the &lt;a href='http://builder.com.com/'&gt;&lt;span style='color:#003399'&gt;Builder.com&lt;/span&gt;&lt;/a&gt; Visual Basic e-newsletter. &lt;a href='http://nl.com.com/MiniFormHandler?brand=builder&amp;amp;subs_channel=bldr_front_door&amp;amp;list_id=e065&amp;amp;tag=fb'&gt;&lt;span style='color:#003399'&gt;Click here&lt;/span&gt;&lt;/a&gt; to subscribe automatically.&lt;/em&gt;&lt;br /&gt;				&lt;/span&gt;&lt;/p&gt;&lt;p style='background: white'&gt;&lt;span style='font-family:Helvetica; font-size:9pt'&gt;A user defined type, or UDT, is a VB technique for defining a data type that exactly meets the needs of your program. A UDT can contain two or more individual data items that can be of different types, such as String and Integer. A UDT can even contain other UDTs and arrays. You can also create arrays of a UDT. &lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='background: white'&gt;&lt;span style='font-family:Helvetica; font-size:9pt'&gt;To define a UDT, use the &lt;em&gt;Type...End Type&lt;/em&gt; statement, which must appear in the declarations section of a code module. Within the statement, you define the individual items, or members, that the UDT will contain. &lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='background: white'&gt;&lt;span style='font-family:Helvetica; font-size:9pt'&gt;Here's an example of a UDT you might create for keeping track of employee data: &lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='background: white'&gt;&lt;span style='font-family:Courier New; font-size:9pt'&gt;Public Type Employee&lt;br/&gt;    FirstNameAs String&lt;br/&gt;    LastName As String&lt;br/&gt;    DateOfHire As Date&lt;br/&gt;    Salary As Currency&lt;br/&gt;    EmployeeNumber As Integer&lt;br/&gt;End Type &lt;/span&gt;&lt;span style='font-family:Helvetica; font-size:9pt'&gt;&lt;br /&gt;				&lt;/span&gt;&lt;/p&gt;&lt;p style='background: white'&gt;&lt;span style='font-family:Helvetica; font-size:9pt'&gt;Once you define the type, you can create instances of it just like any other data type, like so: &lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='background: white'&gt;&lt;span style='font-family:Courier New; font-size:9pt'&gt;Dim OneEmployee As Employee&lt;br/&gt;Dim AllEmployees(500) As Employee &lt;/span&gt;&lt;span style='font-family:Helvetica; font-size:9pt'&gt;&lt;br /&gt;				&lt;/span&gt;&lt;/p&gt;&lt;p style='background: white'&gt;&lt;span style='font-family:Helvetica; font-size:9pt'&gt;To access the members of a UDT, you use the &lt;em&gt;Name.Member&lt;/em&gt; notation. Here are some examples: &lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='background: white'&gt;&lt;span style='font-family:Courier New; font-size:9pt'&gt;OneEmployee.FirstName = "Jack"&lt;br/&gt;OneEmployee.LastName = "Sprat"&lt;br/&gt;AllEmployees(1).FirstName = "Maria" &lt;br/&gt;AllEmployees(1).LastName = "Sanchez" &lt;/span&gt;&lt;span style='font-family:Helvetica; font-size:9pt'&gt;&lt;br /&gt;				&lt;/span&gt;&lt;/p&gt;&lt;p style='background: white'&gt;&lt;span style='font-family:Helvetica; font-size:9pt'&gt;Nesting UDTs can be useful in some situations. Here's an example: &lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='background: white'&gt;&lt;span style='font-family:Courier New; font-size:9pt'&gt;Public Type Person&lt;br/&gt;    FirstNameAs String&lt;br/&gt;    LastName As String&lt;br/&gt;End Type&lt;br/&gt;Public Type Employee&lt;br/&gt;    Name As Person&lt;br/&gt;    DateOfHire As Date&lt;br/&gt;    Salary As Currency&lt;br/&gt;    EmployeeNumber As Integer&lt;br/&gt;End Type &lt;/span&gt;&lt;span style='font-family:Helvetica; font-size:9pt'&gt;&lt;br /&gt;				&lt;/span&gt;&lt;/p&gt;&lt;p style='background: white'&gt;&lt;span style='font-family:Helvetica; font-size:9pt'&gt;When UDTs are nested, you use the same &lt;em&gt;Name.Member&lt;/em&gt; notation but with an extra level, like this: &lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='background: white'&gt;&lt;span style='font-family:Courier New; font-size:9pt'&gt;Dim OneEmployeeAs Employee&lt;br/&gt;OneEmployee.Name.FirstName = "Jack" &lt;/span&gt;&lt;span style='font-family:Helvetica; font-size:9pt'&gt;&lt;br /&gt;				&lt;/span&gt;&lt;/p&gt;&lt;p style='background: white'&gt;&lt;span style='font-family:Helvetica; font-size:9pt'&gt;You can also use UDTs for arguments to functions and procedures and as the return type for functions. They can also be helpful when storing data on disk because VB's Random file type is specifically designed to work with UDTs. &lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='background: white'&gt;&lt;span style='font-family:Helvetica; font-size:9pt'&gt;All in all, UDTs are a tool that every VB programmer should know about. &lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style='background: white'&gt;&lt;span style='font-family:Helvetica; font-size:9pt'&gt;&lt;em&gt;Peter Aitken has been programming with Visual Basic since Version 1.0. He has written numerous books and magazine articles on Visual Basic and other computer and programming topics.&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-4664201153807850613?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/8cGoE7BN6g7bIO9aQSDk4qjpfkw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8cGoE7BN6g7bIO9aQSDk4qjpfkw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/8cGoE7BN6g7bIO9aQSDk4qjpfkw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8cGoE7BN6g7bIO9aQSDk4qjpfkw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/NaKH3udPRas/this-article-originally-appeared-in.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/07/this-article-originally-appeared-in.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-6187903378308800642</guid><pubDate>Thu, 29 May 2008 03:34:00 +0000</pubDate><atom:updated>2008-05-28T20:36:48.608-07:00</atom:updated><title>Pass strings ByRef</title><description>&lt;h3&gt;&lt;span style="font-size:100%;"&gt;Use ByRef instead of function return value&lt;/span&gt;&lt;/h3&gt;&lt;p&gt;There's also an optimization trick for returning a string value. Returning a string as the function return value is the normal practice. However, returning a string in a ByRef parameter is faster.&lt;/p&gt;&lt;p&gt;The ByRef trick for return values applies to both functions and Property Get's. Here's the usual (and slower) way:&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="comment"&gt;' Slow:&lt;/span&gt;&lt;br /&gt;Property Get Name() As String&lt;br /&gt;   Name = m_sName&lt;br /&gt;End Property&lt;br /&gt;&lt;span class="comment"&gt;' Slow:&lt;/span&gt;&lt;br /&gt;Function Name() As String&lt;br /&gt;   Name = m_sName&lt;br /&gt;End Function&lt;/span&gt;&lt;/pre&gt;&lt;pre class="code"&gt;This way is faster if you have to make a large number of calls:&lt;/pre&gt;&lt;pre class="code"&gt;&lt;span style="color:#0000ff;"&gt;&lt;span class="comment"&gt;' Fast:&lt;/span&gt;&lt;br /&gt;Sub GetName(ByRef Name_out As String)&lt;br /&gt;   Name_out = m_sName&lt;br /&gt;End Sub&lt;/span&gt;&lt;/pre&gt;&lt;p&gt;It's often considered bad programming style to return values in parameters. Normally procedures should not cause side-effects by modifying their ByRef parameters. However, if you want speed, you sometimes have to reject accepted programming practices to win a few CPU cycles. Thus, the optimization objective might justify the loss of style. You can use ByRef, but you should indicate why you're using it. For example, you can mark all output parameters with the string &lt;em&gt;out&lt;/em&gt;, or write a comment saying ByRef is used for speed. &lt;/p&gt;&lt;h3&gt;&lt;span style="font-size:100%;"&gt;Stick to ByVal for out-of-process calls&lt;/span&gt;&lt;/h3&gt;&lt;p&gt;There is one case where ByRef is slower than ByVal. This happens when passing ByRef to an out-of-process server. The variable has to be marshalled twice, once going into the method and once returning. The implication is to use ByVal for your public server interfaces.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-6187903378308800642?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/CVgSHTe93BivQrNkZzPXXlMwsrk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/CVgSHTe93BivQrNkZzPXXlMwsrk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/CVgSHTe93BivQrNkZzPXXlMwsrk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/CVgSHTe93BivQrNkZzPXXlMwsrk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/CQCj8eTGJwU/pass-strings-byref.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/05/pass-strings-byref.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-1284590690718494927</guid><pubDate>Thu, 29 May 2008 03:24:00 +0000</pubDate><atom:updated>2008-05-28T20:31:38.524-07:00</atom:updated><title>Comparing a character in the middle of a string</title><description>&lt;p&gt;Similar to the above trick, this is the way to check for a&lt;br /&gt;character in the middle of a string.&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="font-size:85%;color:#000099;"&gt;If AscW(Mid$(Text$, index)) = 65 Then&lt;/span&gt;&lt;/pre&gt;&lt;p&gt;Note that index must be less than or equal to Len(Text$), otherwise you get a run-time error. In this case, call &lt;code&gt;Mid$(, index)&lt;/code&gt; instead of &lt;code&gt;Mid$(, index, 1)&lt;/code&gt;. The third parameter (length) actually makes the call slower, although one could assume the opposite. &lt;/p&gt;&lt;h3&gt;&lt;span style="font-size:100%;"&gt;Compare in binary&lt;/span&gt;&lt;/h3&gt;&lt;p&gt;&lt;span class="PA"&gt;PA&lt;/span&gt; Whenever you can, use binary comparison. This is VB's default. Text comparison is much slower. These statements slow your application down:&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="font-size:85%;color:#000099;"&gt;Option Compare Text&lt;br /&gt;StrComp(, , vbTextCompare)&lt;br /&gt;InStr(, , , vbTextCompare)&lt;/span&gt;&lt;/pre&gt;&lt;p&gt;If you need a case-insensitive StrComp(), use LCase$ to do it,&lt;br /&gt;especially if it's enough on one parameter only:&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="color:#000099;"&gt;&lt;span style="font-size:85%;"&gt;StrComp(Text1$, "abc", vbTextCompare)           &lt;span class="comment"&gt;' Slower&lt;/span&gt;&lt;br /&gt;StrComp(LCase$(Text1$), "abc", vbBinaryCompare) &lt;span class="comment"&gt;' Faster&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;p&gt;In the following case, the two calls to LCase$ remove the performance gain you got above.&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="font-size:85%;color:#000099;"&gt;StrComp(LCase$(Text1$), LCase$(Text2$), vbBinaryCompare)&lt;/span&gt;&lt;/pre&gt;&lt;p&gt;Bear in mind that StrComp(,,vbTextCompare) is more than just a case-insensitive comparison. It's actually built for sorting, not comparing for equality. In many cases, such a locale-dependent&lt;br /&gt;textual comparison is an overkill and can even lead to subtle errors. &lt;/p&gt;&lt;h3 id="instrb"&gt;&lt;span style="font-size:100%;"&gt;Check for existence with InStrB&lt;/span&gt;&lt;/h3&gt;&lt;p&gt;InStr is a nice function to find a string inside another one. Normally you use the plain InStr function, the wide-character version. &lt;/p&gt;&lt;p&gt;There is an optimization with the byte version (InStrB). If you are just going to check whether a string exists inside the other but don't care about the location, you can use the following code:&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="font-size:85%;color:#000099;"&gt;If InStrB(Text$, SearchFor$) &lt;&gt; 0 Then&lt;/span&gt;&lt;/pre&gt;&lt;p&gt;Since you only compare the return value against zero, you don't need to worry about conversions between byte-based indices and character indices. This is not the whole story, however. You need to be aware of the following catches:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;InStrB works completely on byte-based index values. The return value, as well as the start index parameter (the first numeric parameter, not present in the above call) are both in&lt;br /&gt;bytes, not in characters. One character is 2 bytes.&lt;br /&gt;Use the equation &lt;code&gt;byteindex = (characterindex * 2) - 1&lt;/code&gt; to convert indices.&lt;br /&gt;If there is a match at character 3, the byte index is 5. &lt;/li&gt;&lt;br /&gt;&lt;li&gt;InStrB is a byte data function and it's dangerous to use it on character input. If the strings may contain character values outside the range 1-255, be careful. Chances are InStrB is not good for you. As InStrB does a byte-wise search, it can return matches between characters:&lt;br /&gt;&lt;pre class="code"&gt;&lt;span style="color:#000099;"&gt;&lt;span style="font-size:85%;"&gt;Text$ = ChrW$(&amp;amp;H1234) &amp;amp; ChrW$(&amp;amp;H5678) &lt;span class="comment"&gt;' Bytes 34 12 78 56 hex&lt;/span&gt;&lt;br /&gt;SearchFor$ = ChrW$(&amp;amp;H7812)            &lt;span class="comment"&gt;' Bytes    12 78&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; &lt;/pre&gt;In this case, InStrB returns 2, which is the start of the byte sequence 12 78 but doesn't match any of the input characters. This is probably not what you want when working with strings. Note that even if your strings are plain ASCII, the null character can still pose a problem (for example, InStrB("A" &amp;amp; vbNullChar, vbNullChar) returns 2, not 3 as you could expect).&lt;br /&gt;&lt;/li&gt;&lt;li&gt;There are extra complications with the vbTextCompare parameter. vbBinaryCompare is simpler to understand. &lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;p&gt;What does this mean? Use InStrB to optimize only when you fully understand how it works.&lt;/p&gt;&lt;h3&gt;Like&lt;/h3&gt;&lt;p&gt;The Like operator is not particularly fast. Consider alternatives. We don't have a generic rule to follow here. You need to measure the performance differences between your alternatives.&lt;br /&gt;Here is one rule though. It applies if you're looking for a certain string inside another one.&lt;/p&gt;&lt;pre class="code"&gt;Instead of:&lt;br /&gt;&lt;span style="font-size:85%;color:#000099;"&gt; If Text$ Like "*abc*" Then&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Use:&lt;br /&gt;&lt;span style="font-size:85%;color:#000099;"&gt; If InStr(Text$, "abc") &lt;&gt; 0 Then&lt;/span&gt;&lt;/pre&gt;&lt;p&gt;You may also use &lt;a href="http://www.blogger.com/post-create.g?blogID=8095366463821181595#instrb"&gt;InStrB&lt;/a&gt; if you know what you're doing.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-1284590690718494927?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/fC-xixsSDyBET9jbqB8sEqfKLq4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fC-xixsSDyBET9jbqB8sEqfKLq4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/fC-xixsSDyBET9jbqB8sEqfKLq4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fC-xixsSDyBET9jbqB8sEqfKLq4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/o-ZlL-X6rCE/comparing-character-in-middle-of-string.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/05/comparing-character-in-middle-of-string.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-4443227128265422450</guid><pubDate>Thu, 29 May 2008 03:21:00 +0000</pubDate><atom:updated>2008-05-28T20:23:19.729-07:00</atom:updated><title>Comparing the leftmost character</title><description>&lt;p&gt;Here are two unoptimized ways to branch on the first character in&lt;br /&gt;a string.&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="color:#000099;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="comment"&gt;' Case 1&lt;/span&gt;&lt;br /&gt;If Left$(Text$, 1) = "A" Then&lt;br /&gt;&lt;br /&gt;&lt;span class="comment"&gt;' Case 2&lt;/span&gt;&lt;br /&gt;Select Case Left$(Text$, 1)&lt;br /&gt;   Case "A"&lt;br /&gt;   Case "B"&lt;br /&gt;End Select&lt;br /&gt;&lt;br /&gt;Here are the faster alternatives.&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="code"&gt;&lt;span style="color:#000099;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="comment"&gt;' Case 1&lt;/span&gt;&lt;br /&gt;If LenB(Text$) &amp;lt;&amp;gt; 0 Then&lt;br /&gt;   If AscW(Text$) = 65 Then&lt;br /&gt;&lt;br /&gt;&lt;span class="comment"&gt;' Case 2&lt;/span&gt;&lt;br /&gt;If LenB(Text$) &amp;lt;&amp;gt; 0 Then&lt;br /&gt;   Select Case AscW(Text$)&lt;br /&gt;      Case 65 &lt;span class="comment"&gt;' AscW("A")=65&lt;/span&gt;&lt;br /&gt;      Case 66&lt;br /&gt;End Select&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;p&gt;Calling AscW() is faster than first calling Left$(), then comparing the result to another string. There's a caveat, however. AscW() on an empty or null string is a run-time error. That's why&lt;br /&gt;you &lt;strong&gt;must call LenB() first&lt;/strong&gt; to rule out that possibility. You can leave out the call to LenB() only if you're certain that the string contains at least one character.&lt;br /&gt;&lt;br /&gt;The Select Case structure offers an additional bonus. Having single numbers in the Case conditions is less time-intensive than repeatedly comparing against a string.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-4443227128265422450?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/rQ6bzSFdC6YQTXsYbxifwAqNEfA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rQ6bzSFdC6YQTXsYbxifwAqNEfA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/rQ6bzSFdC6YQTXsYbxifwAqNEfA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rQ6bzSFdC6YQTXsYbxifwAqNEfA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/i-_zkWnakoM/comparing-leftmost-character.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/05/comparing-leftmost-character.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-2816291917648545890</guid><pubDate>Thu, 29 May 2008 03:11:00 +0000</pubDate><atom:updated>2008-05-28T20:19:01.102-07:00</atom:updated><title>Built-in string constants</title><description>&lt;pre class="code"&gt;&lt;span style="color:#000099;"&gt;vbNullChar     0&lt;br /&gt;vbBack         8&lt;br /&gt;vbTab          9&lt;br /&gt;vbLf          10&lt;br /&gt;vbVerticalTab 11&lt;br /&gt;vbFormFeed    12&lt;br /&gt;vbCr          13&lt;br /&gt;vbCrLf        13+10&lt;br /&gt;vbNewline     13+10&lt;br /&gt;""            34&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;For some reason, vbNewline is a little bit faster than vbCrLf.&lt;br /&gt;&lt;br /&gt;The last example ("") is not actually a constant but an escape sequence. You can use "" anywhere in a string to represent a quotation mark. The alternative is Chr(34), which was required in some early BASIC versions where the "" syntax didn't exist.&lt;/p&gt;&lt;p&gt;You can also define other other character values to avoid repeated calls to Chr$()/ChrW$(). If the character value is in the range ASCII 0-31, you need to define them as variables and assign the correct character value before use. &lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="color:#000099;"&gt;Dim BEL As String&lt;br /&gt;BEL = ChrW$(7) &lt;span class="comment"&gt;' The BEL character, or ^G&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;p&gt;For other characters you can simply use a constant.&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="color:#000099;"&gt;Const Percentage = "%"&lt;/span&gt;&lt;/pre&gt;&lt;h3&gt;Unnecessary Asc/AscW&lt;/h3&gt;&lt;p&gt;&lt;span class="PA"&gt;Project Analasys&lt;/span&gt; It's obvious, but calling Asc/AscW on a string&lt;br /&gt;constant makes no sense, as the value returned never changes. Instead of Asc("A"),&lt;br /&gt;use the value 65. Better yet, define a constant such as&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="color:#000099;"&gt;Const ascA = 65&lt;/span&gt;&lt;/pre&gt;&lt;p&gt;and use it instead of 65 for more legibility. As it happens, VB.NET compiles Asc("A") better, but since we're in VB6, we need to define this constant.&lt;/p&gt;&lt;h3&gt;Your own string constants&lt;/h3&gt;&lt;p&gt;If the same string exists in more than one location in your project, it will also exist in several locations in the executable file, as far as VB6 is concerned (VB.NET joins duplicated strings during compilation).&lt;/p&gt;&lt;p&gt;You can optimize by defining your strings as constants and referencing the constant where you need the string value. This way you save space as each constant gets stored only once. Besides, if you ever consider localizing your program, you have a useful list of string constants to give to the translator.&lt;br /&gt;There is a nasty exception. It doesn't save any space to define constants by other constants.&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="color:#000099;"&gt;Const MSG1 = "Hello, "&lt;br /&gt;Const MSG2 = "world!"&lt;br /&gt;Const MSG3 = MSG1 &amp;amp; MSG2&lt;/span&gt;&lt;/pre&gt;&lt;p&gt;In this case you will actually the same text twice in the executable. All of MSG1, MSG2 and MSG3 will get stored - not something you wanted to achieve! If you want to save space, concatenate MSG1 &amp;amp; MSG2 at run-time. For speed, store it in a variable for reuse.&lt;/p&gt;&lt;p&gt;Also notice that the above applies to string constants only. Numeric constants are also computed and stored in the executable, but string constants are more likely to demand more space (6 bytes overhead + 2 bytes per character).&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.aivosto.com/project/help/stringanalysis.html" target="pahelp"&gt;String literal analysis&lt;img class="popup" alt="Popup link" src="http://www.aivosto.com/popup.gif" /&gt;&lt;/a&gt; is a Project Analyzer feature that reports duplicate strings. Follow the link to read more about the elimination of unnecessary string literals.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-2816291917648545890?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/5oOsuYcwoxpofTLoKQXWKOGBA8w/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5oOsuYcwoxpofTLoKQXWKOGBA8w/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/5oOsuYcwoxpofTLoKQXWKOGBA8w/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5oOsuYcwoxpofTLoKQXWKOGBA8w/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/oAiyv4QQr3A/built-in-string-constants.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/05/built-in-string-constants.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-1327835537644726055</guid><pubDate>Thu, 29 May 2008 03:07:00 +0000</pubDate><atom:updated>2008-05-28T20:11:07.230-07:00</atom:updated><title>Replace or not?</title><description>&lt;p&gt;The following tip might be obvious, but it wasn't to us. It makes no sense to call Replace if you're not likely to replace anything. If a replace is unlikely, verify first (with &lt;a href="http://www.aivosto.com/vbtips/instr.html"&gt;InStr&lt;/a&gt; or InStrB, for example) that there is something you need replace. &lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="color:#000099;"&gt;If InStr(Text$, ToBeReplaced$) &amp;lt;&amp;gt; 0 Then&lt;br /&gt;   Text$ = Replace(Text$, ToBeReplaced$, "xyz")&lt;br /&gt;End If&lt;/span&gt;&lt;/pre&gt;&lt;p&gt;If a replace is likely or certain to occur, there is no need to call InStr. It will just add an extra burden. Notice that it's not necessary to add $ in the call to Replace. This is an exception to the $ rule, presented above.&lt;/p&gt;&lt;h2 id="wide"&gt;&lt;span style="font-size:100%;"&gt;Use the wide AscW and ChrW$&lt;/span&gt;&lt;/h2&gt;&lt;p&gt;Every string is in Unicode, which it takes 2 bytes per character.You don't have to be writing international applications to take advantage of a couple of Unicode tricks. Consider the following functions: &lt;code&gt;Asc(), Chr$()&lt;/code&gt;.&lt;br /&gt;What's wrong with them?&lt;br /&gt;They are the slower versions. If you're concerned about speed, use the wide versions instead: &lt;code&gt;AscW(), ChrW$()&lt;/code&gt;.&lt;/p&gt;&lt;p&gt;AscW() is not the same as Asc(). They return different values. ChrW$() is different from Chr$() because they take different parameter values. However, AscW() equals Asc() and ChrW$() equals Chr$() when working with characters from ASCII/Ansi 0 to 127.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-1327835537644726055?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/t1hP74TW6KFy7fuW3awk5HygOek/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/t1hP74TW6KFy7fuW3awk5HygOek/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/t1hP74TW6KFy7fuW3awk5HygOek/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/t1hP74TW6KFy7fuW3awk5HygOek/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/hDQZxKLm05E/replace-or-not.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/05/replace-or-not.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-5803664177174637604</guid><pubDate>Thu, 29 May 2008 02:55:00 +0000</pubDate><atom:updated>2008-05-28T19:59:43.697-07:00</atom:updated><title>Dollars that make your program run faster</title><description>&lt;h2 id="variant"&gt;No variants please&lt;/h2&gt;&lt;p&gt;It's a simple thing but often overlooked. All variables, parameters and functions should have a defined data type. If the data is a string, then the data type should be defined as string. If you don't give a data type, you're using a variant. The variant data type has its uses but not in string&lt;br /&gt;processing.&lt;br /&gt;A variant means performance loss in most cases.&lt;/p&gt;&lt;br /&gt;&lt;h3&gt;Dollars that make your program run faster&lt;/h3&gt;&lt;p&gt;The following functions unoptimal if you're using them on strings.&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="font-size:85%;color:#0000ff;"&gt;Left(), Mid(), Right(), Chr(), ChrW(),&lt;br /&gt;UCase(), LCase(), LTrim(), RTrim(), Trim(),&lt;br /&gt;Space(), String(), Format(), Hex(), Oct(),&lt;br /&gt;Str(), Error&lt;/span&gt;&lt;/pre&gt;&lt;p&gt;These are the dreaded variant functions. They take a variant, they return a variant. These functions are OK to use if you're processing variants. This is the case in database programming, where your input may contain Null values.&lt;br /&gt;So what's all that variant stuff in string processing? It's fat. If you're dealing with strings, forget about the variants. Use the string versions instead:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;color:#0000ff;"&gt;Left$(), Mid$(), Right$(), Chr$(), ChrW$(),&lt;br /&gt;UCase$(), LCase$(), LTrim$(), RTrim$(), Trim$(),&lt;br /&gt;Space$(), String$(),  Format$(), Hex$(), Oct$(),&lt;br /&gt;Str$(), Error$&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-5803664177174637604?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/TsctN5FJi96DUG8989103cpaIKQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/TsctN5FJi96DUG8989103cpaIKQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/TsctN5FJi96DUG8989103cpaIKQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/TsctN5FJi96DUG8989103cpaIKQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/vrwkdGaM6IU/dollars-that-make-your-program-run.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/05/dollars-that-make-your-program-run.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-2922113957842153244</guid><pubDate>Thu, 29 May 2008 02:45:00 +0000</pubDate><atom:updated>2008-05-28T19:55:00.868-07:00</atom:updated><title>Optimize the empty string</title><description>&lt;p&gt;Is the "" expression often found in your code? Beware! So many CPU cycles are wasted for such a string! Testing and assigning empty strings is an easy place for optimization.&lt;/p&gt;&lt;h3&gt;Checking for empty string&lt;/h3&gt;&lt;p&gt;The usual ways are these:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;color:#000099;"&gt;If Text$ = "" Then&lt;br /&gt;If Text$ &lt;&gt; "" Then&lt;/span&gt;&lt;/p&gt;&lt;p&gt;However, VB executes the following equivalent statements much faster.&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="color:#000099;"&gt;If LenB(Text$)= 0 Then&lt;br /&gt;If LenB(Text$)&lt;&gt; 0 Then&lt;/span&gt;&lt;/pre&gt;&lt;p&gt;The replacement is essentially risk-free. Your code executes the same as&lt;br /&gt;before, only faster.&lt;br /&gt;VB's implementation of LenB is fast. LenB is the byte equivalent of Len. Len is actually implemented as LenB\2. That makes LenB is faster than Len, so you&lt;br /&gt;should use it where possible. VB3 and VB.NET don't have the LenB alternative, in these languages you should use Len.&lt;/p&gt;&lt;p&gt;Note that we use the &lt;&gt; operator, not &gt;. &lt;&gt; simply tests for inequality,&lt;br /&gt;while &gt; tests more. As Len/LenB never return a negative number, we can safely&lt;br /&gt;use this test.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-2922113957842153244?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/7Lhts5eUKIF7RHc-M7Kv_D4Ycgw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/7Lhts5eUKIF7RHc-M7Kv_D4Ycgw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/7Lhts5eUKIF7RHc-M7Kv_D4Ycgw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/7Lhts5eUKIF7RHc-M7Kv_D4Ycgw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/RiZ4DxstnGU/optimize-empty-string.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/05/optimize-empty-string.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-8603222258329378630</guid><pubDate>Wed, 28 May 2008 03:48:00 +0000</pubDate><atom:updated>2008-05-27T20:59:40.301-07:00</atom:updated><title>How to take a DSN Driver With VB?</title><description>&lt;ol&gt;&lt;li&gt;&lt;p&gt;Make 2 Combo box in New Form.&lt;br /&gt;&lt;span style="font-family:Symbol;"&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;· &lt;/span&gt;Named First Combo with CBODSNList&lt;span style="font-family:Symbol;"&gt;&lt;br /&gt;· &lt;/span&gt;Second Combo CBODrivers&lt;/p&gt;&lt;/li&gt;&lt;li&gt;coding an API function And Constanta:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:78%;"&gt;Private Declare Function SQLDataSources Lib "ODBC32.DLL" (ByVal&lt;br /&gt;henv&amp;amp;, ByVal fDirection%, ByVal szDSN$, _&lt;br /&gt;&lt;br /&gt;ByVal cbDSNMax%, pcbDSN%, ByVal&lt;br /&gt;szDescription$, ByVal cbDescriptionMax%, pcbDescription%) As Integer&lt;br /&gt;&lt;br /&gt;Private Declare Function SQLAllocEnv% Lib "ODBC32.DLL" (env&amp;amp;)&lt;br /&gt;&lt;br /&gt;Const SQL_SUCCESS As Long = 0&lt;br /&gt;Const SQL_FETCH_NEXT As Long = 1 &lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;In Event Form Load Type in Code Under:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:78%;"&gt;Private Sub Form_Load()&lt;br /&gt;Dim i As Integer&lt;br /&gt;Dim sDSNItem As String * 1024&lt;br /&gt;Dim sDRVItem As String * 1024&lt;br /&gt;Dim sDSN As String&lt;br /&gt;Dim sDRV As String&lt;br /&gt;Dim sDRVold As String&lt;br /&gt;Dim iDSNLen As Integer&lt;br /&gt;Dim iDRVLen As Integer&lt;br /&gt;Dim lHenv As Long&lt;br /&gt;If SQLAllocEnv(lHenv) &lt;&gt; -1 Then&lt;br /&gt;Do Until &lt;&gt; SQL_SUCCESS&lt;br /&gt;sDSNItem = Space$(1024)&lt;br /&gt;sDRVItem = Space$(1024)&lt;br /&gt;i = SQLDataSources(lHenv, SQL_FETCH_NEXT, sDSNItem, 1024, iDSNLen, sDRVItem, 1024, iDRVLen)&lt;br /&gt;sDSN = Left$(sDSNItem, iDSNLen)&lt;br /&gt;sDRV = Left$(sDRVItem, iDRVLen)&lt;br /&gt;If sDSN &lt;&gt; Space(iDSNLen) Then&lt;br /&gt;If UCase(Left(sDSN, 4)) = "KIS_" Then&lt;br /&gt;CBODSNList.AddItem sDSN&lt;br /&gt;If sDRVold &amp;lt;&amp;gt; sDRV Then&lt;br /&gt;CBODrivers.AddItem sDRV&lt;br /&gt;End If&lt;br /&gt;sDRVold = sDRV&lt;br /&gt;End If&lt;br /&gt;End If&lt;br /&gt;Loop&lt;br /&gt;End If&lt;br /&gt;&lt;br /&gt;If CBODrivers.ListCount &gt; 0 Then&lt;br /&gt;CBODrivers.ListIndex = 0&lt;br /&gt;CBODSNList.ListIndex = 0&lt;br /&gt;End If&lt;br /&gt;End Sub&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Finish&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;span style="font-size:85%;"&gt;Click Picture to largest&lt;br /&gt;&lt;/span&gt;&lt;a href="http://3.bp.blogspot.com/_CR-tRPP4h9c/SDzXy_wN8rI/AAAAAAAABtE/njviIHe7KmU/s1600-h/ODBC32.bmp"&gt;&lt;img id="BLOGGER_PHOTO_ID_5205272540440556210" style="CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_CR-tRPP4h9c/SDzXy_wN8rI/AAAAAAAABtE/njviIHe7KmU/s400/ODBC32.bmp" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-8603222258329378630?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/SlbA1NZSCtzNyBSZLJYlnPkUzYU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/SlbA1NZSCtzNyBSZLJYlnPkUzYU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/SlbA1NZSCtzNyBSZLJYlnPkUzYU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/SlbA1NZSCtzNyBSZLJYlnPkUzYU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/wIHarQRaiqc/how-to-take-dsn-driver-with-vb-make-2.html</link><author>noreply@blogger.com (Kaleng)</author><media:thumbnail url="http://3.bp.blogspot.com/_CR-tRPP4h9c/SDzXy_wN8rI/AAAAAAAABtE/njviIHe7KmU/s72-c/ODBC32.bmp" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/05/how-to-take-dsn-driver-with-vb-make-2.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-6025047038495862573</guid><pubDate>Wed, 28 May 2008 02:57:00 +0000</pubDate><atom:updated>2008-05-27T20:45:53.300-07:00</atom:updated><title>Mengambil DSN Dan Driver Di ODBC(With Bahasa)</title><description>&lt;p&gt;Bagimana cara mengambil DSN beserta Drivernya di ODBC dengan  Visual&lt;br /&gt;Basic 6.00.&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Masukan Dua Combo Box di form baru. Combo box 1 namanya CBODSNList Combo&lt;br /&gt;box kedua namanya CBODrivers&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Masukan Fungsi API di Form kyak dibawah:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:78%;"&gt;Private Declare Function SQLDataSources Lib "ODBC32.DLL" (ByVal&lt;br /&gt;henv&amp;amp;, ByVal fDirection%, ByVal szDSN$, _&lt;br /&gt;&lt;br /&gt;ByVal cbDSNMax%, pcbDSN%, ByVal&lt;br /&gt;szDescription$, ByVal cbDescriptionMax%, pcbDescription%) As Integer&lt;br /&gt;&lt;br /&gt;Private Declare Function SQLAllocEnv% Lib "ODBC32.DLL" (env&amp;amp;)&lt;br /&gt;&lt;br /&gt;Const SQL_SUCCESS As Long = 0&lt;br /&gt;&lt;br /&gt;Const SQL_FETCH_NEXT As Long = 1&lt;br /&gt;&lt;br /&gt; &lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Trus Di Event Form Load masukin coding di bawah ini:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:78%;"&gt;Private Sub Form_Load()&lt;br /&gt;&lt;br /&gt;    Dim i As Integer&lt;br /&gt;&lt;br /&gt;    Dim sDSNItem As String * 1024&lt;br /&gt;&lt;br /&gt;    Dim sDRVItem As String * 1024&lt;br /&gt;&lt;br /&gt;    Dim sDSN As String&lt;br /&gt;&lt;br /&gt;    Dim sDRV As String&lt;br /&gt;&lt;br /&gt;    Dim sDRVold As String&lt;br /&gt;&lt;br /&gt;    Dim iDSNLen As Integer&lt;br /&gt;&lt;br /&gt;    Dim iDRVLen As Integer&lt;br /&gt;&lt;br /&gt;    Dim lHenv As Long&lt;br /&gt;&lt;br /&gt;    If SQLAllocEnv(lHenv) &amp;lt;&amp;gt; -1 Then&lt;br /&gt;&lt;br /&gt;        Do Until i &amp;lt;&amp;gt; SQL_SUCCESS&lt;br /&gt;&lt;br /&gt;            sDSNItem =&lt;br /&gt;Space$(1024)&lt;br /&gt;&lt;br /&gt;            sDRVItem =&lt;br /&gt;Space$(1024)&lt;br /&gt;&lt;br /&gt;            i =&lt;br /&gt;SQLDataSources(lHenv, SQL_FETCH_NEXT, sDSNItem, 1024, iDSNLen, sDRVItem,&lt;br /&gt;1024, iDRVLen)&lt;br /&gt;&lt;br /&gt;            sDSN =&lt;br /&gt;Left$(sDSNItem, iDSNLen)&lt;br /&gt;&lt;br /&gt;            sDRV =&lt;br /&gt;Left$(sDRVItem, iDRVLen)&lt;br /&gt;&lt;br /&gt;            If sDSN &amp;lt;&amp;gt;&lt;br /&gt;Space(iDSNLen) Then&lt;br /&gt;&lt;br /&gt;               &lt;br /&gt;If UCase(Left(sDSN, 4)) = "KIS_" Then&lt;br /&gt;&lt;br /&gt;                   &lt;br /&gt;CBODSNList.AddItem sDSN&lt;br /&gt;&lt;br /&gt;                   &lt;br /&gt;If sDRVold &amp;lt;&amp;gt; sDRV Then&lt;br /&gt;&lt;br /&gt;                       &lt;br /&gt;CBODrivers.AddItem sDRV&lt;br /&gt;&lt;br /&gt;                   &lt;br /&gt;End If&lt;br /&gt;&lt;br /&gt;                   &lt;br /&gt;sDRVold = sDRV&lt;br /&gt;&lt;br /&gt;               &lt;br /&gt;End If&lt;br /&gt;&lt;br /&gt;            End If&lt;br /&gt;&lt;br /&gt;        Loop&lt;br /&gt;&lt;br /&gt;    End If&lt;br /&gt;&lt;br /&gt;    If CBODrivers.ListCount &amp;gt; 0 Then&lt;br /&gt;&lt;br /&gt;        CBODrivers.ListIndex = 0&lt;br /&gt;&lt;br /&gt;        CBODSNList.ListIndex = 0&lt;br /&gt;&lt;br /&gt;    End If&lt;br /&gt;&lt;br /&gt;End Sub&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Selesai&lt;/li&gt;&lt;ol&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-6025047038495862573?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/OPSbOw0qlDM9tHEgK1w3fMVA2Ro/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OPSbOw0qlDM9tHEgK1w3fMVA2Ro/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/OPSbOw0qlDM9tHEgK1w3fMVA2Ro/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/OPSbOw0qlDM9tHEgK1w3fMVA2Ro/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/cHJpzKBO9VI/mengambil-dsn-dan-driver-di-odbcwith.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/05/mengambil-dsn-dan-driver-di-odbcwith.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-7407717314014218919</guid><pubDate>Tue, 27 May 2008 06:10:00 +0000</pubDate><atom:updated>2008-05-26T23:11:31.027-07:00</atom:updated><title>Sejarah(with bahasa)</title><description>&lt;a title="Bill Gates" href="http://id.wikipedia.org/wiki/Bill_Gates"&gt;&lt;span style="font-size:85%;"&gt;Bill Gates&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, pendiri Microsoft, memulai bisnis &lt;/span&gt;&lt;a class="new" title="Perangkt lunak (belum dibuat)" href="http://id.wikipedia.org/w/index.php?title=Perangkt_lunak&amp;amp;action=edit&amp;amp;redlink=1"&gt;&lt;span style="font-size:85%;"&gt;softwarenya&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; dengan mengembangkan interpreter bahasa &lt;/span&gt;&lt;a class="new" title="Basic (belum dibuat)" href="http://id.wikipedia.org/w/index.php?title=Basic&amp;amp;action=edit&amp;amp;redlink=1"&gt;&lt;span style="font-size:85%;"&gt;Basic&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; untuk &lt;/span&gt;&lt;a title="Altair 8800" href="http://id.wikipedia.org/wiki/Altair_8800"&gt;&lt;span style="font-size:85%;"&gt;Altair 8800&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, untuk kemudian ia ubah agar dapat berjalan di atas &lt;/span&gt;&lt;a title="IBM PC" href="http://id.wikipedia.org/wiki/IBM_PC"&gt;&lt;span style="font-size:85%;"&gt;IBM PC&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; dengan sistem operasi &lt;/span&gt;&lt;a title="DOS" href="http://id.wikipedia.org/wiki/DOS"&gt;&lt;span style="font-size:85%;"&gt;DOS&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;. Perkembangan berikutnya ialah diluncurkannya &lt;/span&gt;&lt;a class="new" title="BASICA (belum dibuat)" href="http://id.wikipedia.org/w/index.php?title=BASICA&amp;amp;action=edit&amp;amp;redlink=1"&gt;&lt;span style="font-size:85%;"&gt;BASICA&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; (basic-advanced) untuk DOS. Setelah BASICA, Microsoft meluncurkan &lt;/span&gt;&lt;a class="new" title="Microsoft QuickBasic (belum dibuat)" href="http://id.wikipedia.org/w/index.php?title=Microsoft_QuickBasic&amp;amp;action=edit&amp;amp;redlink=1"&gt;&lt;span style="font-size:85%;"&gt;Microsoft QuickBasic&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; dan Microsoft Basic (dikenal juga sebagai Basic Compiler).&lt;br /&gt;Sejarah BASIC di tangan Microsoft sebagai bahasa yang diinterpretasi (BASICA) dan juga bahasa yang dikompilasi (BASCOM) membuat Visual Basic diimplementasikan sebagai gabungan keduanya.&lt;br /&gt;Programmer yang menggunakan Visual Basic bisa memilih kode &lt;/span&gt;&lt;a class="new" title="Bahasa pemrograman yang dikompilasi (belum dibuat)" href="http://id.wikipedia.org/w/index.php?title=Bahasa_pemrograman_yang_dikompilasi&amp;amp;action=edit&amp;amp;redlink=1"&gt;&lt;span style="font-size:85%;"&gt;terkompilasi&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; atau kode yang harus &lt;/span&gt;&lt;a class="new" title="Bahasa pemrograman yang diinterpretasikan (belum dibuat)" href="http://id.wikipedia.org/w/index.php?title=Bahasa_pemrograman_yang_diinterpretasikan&amp;amp;action=edit&amp;amp;redlink=1"&gt;&lt;span style="font-size:85%;"&gt;diinterpretasi&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; sebagai hasil executable dari kode VB. Sayangnya, meskipun sudah terkompilasi jadi bahasa mesin, &lt;/span&gt;&lt;a class="new" title="Dynamic link library (belum dibuat)" href="http://id.wikipedia.org/w/index.php?title=Dynamic_link_library&amp;amp;action=edit&amp;amp;redlink=1"&gt;&lt;span style="font-size:85%;"&gt;DLL&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; bernama MSVBVMxx.DLL tetap dibutuhkan. Namun karakteristik bahasa terkompilasi tetap muncul (ia lebih cepat dari kalau kita pakai mode terinterpretasi).&lt;br /&gt;&lt;/span&gt;&lt;a id="Pemrograman_Berorientasi_Objek_.28OOP.29" name="Pemrograman_Berorientasi_Objek_.28OOP.29"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;[&lt;/span&gt;&lt;a title="Sunting bagian: Pemrograman Berorientasi Objek (OOP)" href="http://id.wikipedia.org/w/index.php?title=Visual_Basic&amp;amp;action=edit&amp;amp;section=2"&gt;&lt;span style="font-size:85%;"&gt;sunting&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;] &lt;/span&gt;&lt;a class="mw-redirect" title="Pemrograman Berorientasi Objek" href="http://id.wikipedia.org/wiki/Pemrograman_Berorientasi_Objek"&gt;&lt;span style="font-size:85%;"&gt;Pemrograman Berorientasi Objek&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; (OOP)&lt;br /&gt;Visual Basic merupakan bahasa yang mendukung OOP, namun tidak sepenuhnya. Beberapa karakteristik obyek tidak dapat dilakukan pada Visual Basic, seperti Inheritance tidak dapat dilakukan pada class module. Polymorphism secara terbatas bisa dilakukan dengan mendeklarasikan class module yang memiliki Interface tertentu. Visual Basic (VB) tidak bersifat case sensitif.&lt;br /&gt;&lt;/span&gt;&lt;a id="Desain_Visual_dan_Komponen" name="Desain_Visual_dan_Komponen"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;[&lt;/span&gt;&lt;a title="Sunting bagian: Desain Visual dan Komponen" href="http://id.wikipedia.org/w/index.php?title=Visual_Basic&amp;amp;action=edit&amp;amp;section=3"&gt;&lt;span style="font-size:85%;"&gt;sunting&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;] Desain Visual dan Komponen&lt;br /&gt;Visual Basic menjadi populer karena kemudahan desain form secara visual dan adanya kemampuan untuk menggunakan komponen-komponen ActiveX yang dibuat oleh pihak lain. Namun komponen &lt;/span&gt;&lt;a class="new" title="ActiveX (belum dibuat)" href="http://id.wikipedia.org/w/index.php?title=ActiveX&amp;amp;action=edit&amp;amp;redlink=1"&gt;&lt;span style="font-size:85%;"&gt;ActiveX&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; memiliki masalahnya tersendiri yang dikenal sebagai DLL hell. Pada Visual Basic .NET, Microsoft mencoba mengatasi masalah DLL hell dengan mengubah cara penggunaan komponen (menjadi independen terhadap &lt;/span&gt;&lt;a class="mw-redirect" title="Registry Windows" href="http://id.wikipedia.org/wiki/Registry_Windows"&gt;&lt;span style="font-size:85%;"&gt;registry&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;).&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-7407717314014218919?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/h6VQ_v4zM7gEiVaOzOh-A_-jrGw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/h6VQ_v4zM7gEiVaOzOh-A_-jrGw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/h6VQ_v4zM7gEiVaOzOh-A_-jrGw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/h6VQ_v4zM7gEiVaOzOh-A_-jrGw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/_ZjtnHEU_7s/sejarahwith-bahasa.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/05/sejarahwith-bahasa.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-4354906369619431635</guid><pubDate>Tue, 27 May 2008 05:55:00 +0000</pubDate><atom:updated>2008-05-26T23:00:54.217-07:00</atom:updated><title>Sample code</title><description>&lt;span style="font-size:85%;"&gt;Here are some examples of the language: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Program to display a pop-up message box with the words "Hello World" on it: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Private Sub Form_Load() &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;    MsgBox "Hello World" &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;End Sub &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Program to display an input box: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Sub Main() &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Dim a As String a = InputBox("Enter your name:") &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;MsgBox a &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;End Sub &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Running Another Application Using Visual Basic: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Private Sub Run_Notepad()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt; Shell "notepad.exe", vbMinimizedFocus &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;'This would open Notepad, as Notepad is in the system folder. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;'%SystemRoot% is an environment variable containing the path to the system folder. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;'which is not needed as it is already in the system folder &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;End Sub &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Printing multiplication table of 5 on form: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Private Sub PrintMul_Click() &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Dim I As Integer &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;For I = 1 To 10 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Print 5; " x "; I; " = "; 5 * I &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Next I &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;End Sub &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Displaying all prime numbers below 1,000,000:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Private Sub DisplayPrimeNumbers() &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;     Dim Num As Long &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;     Dim NN As Long &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;     Dim IsPrime As Boolean &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;     For Num = 2 To 1000000 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;          IsPrime = True&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;          For NN = 2 To Int(Num / 2) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;                    If Num Mod NN = 0 Then &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;                         IsPrime = False &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;                         Exit For &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;                   End &lt;/span&gt;&lt;span style="font-size:85%;"&gt;If &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;          Next &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;          If IsPrime &lt;/span&gt;&lt;span style="font-size:85%;"&gt;Then &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;                MsgBox CStr(Num) + " is a prime number!" &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;          End If &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;      Next &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;End Sub&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-4354906369619431635?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/pLUvQkJ70McMJn1a8nL8tZ_vCr0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pLUvQkJ70McMJn1a8nL8tZ_vCr0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/pLUvQkJ70McMJn1a8nL8tZ_vCr0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pLUvQkJ70McMJn1a8nL8tZ_vCr0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/ghMh-eBdQiU/sample-code.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/05/sample-code.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-8186952384469369522</guid><pubDate>Tue, 27 May 2008 05:51:00 +0000</pubDate><atom:updated>2008-05-26T22:54:18.175-07:00</atom:updated><title>Timeline of Visual Basic (VB1 to VB6)</title><description>&lt;span style="font-size:85%;"&gt;&lt;strong&gt;Project 'Thunder' was initiated Visual Basic 1.0 (May &lt;/strong&gt;&lt;/span&gt;&lt;a title="1991" href="http://en.wikipedia.org/wiki/1991"&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;1991&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;) &lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;was released for Windows at the Comdex/Windows World trade show in Atlanta, Georgia. &lt;/span&gt;&lt;a title="VB DOS Logo" href="http://en.wikipedia.org/wiki/Image:VBDOS-icon.PNG"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;strong&gt;Visual Basic for MS-DOS Visual Basic 1.0 for &lt;/strong&gt;&lt;/span&gt;&lt;a title="DOS" href="http://en.wikipedia.org/wiki/DOS"&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;DOS&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt; was released in September &lt;/strong&gt;&lt;/span&gt;&lt;a title="1992" href="http://en.wikipedia.org/wiki/1992"&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;1992&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;. &lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;The language itself was not quite compatible with Visual Basic for Windows, as it was actually the next version of Microsoft's DOS-based BASIC compilers, &lt;/span&gt;&lt;a title="Microsoft QuickBASIC compiler" href="http://en.wikipedia.org/wiki/Microsoft_QuickBASIC_compiler"&gt;&lt;span style="font-size:85%;"&gt;QuickBASIC&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; and BASIC Professional Development System. The interface used the &lt;/span&gt;&lt;a title="Character Oriented Windows" href="http://en.wikipedia.org/wiki/Character_Oriented_Windows"&gt;&lt;span style="font-size:85%;"&gt;"COW" (Character Oriented Windows)&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; interface, using &lt;/span&gt;&lt;a title="Extended ASCII" href="http://en.wikipedia.org/wiki/Extended_ASCII"&gt;&lt;span style="font-size:85%;"&gt;extended ASCII&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; characters to simulate the appearance of a &lt;/span&gt;&lt;a title="GUI" href="http://en.wikipedia.org/wiki/GUI"&gt;&lt;span style="font-size:85%;"&gt;GUI&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;Visual Basic 2.0 was released in November &lt;/strong&gt;&lt;/span&gt;&lt;a title="1992" href="http://en.wikipedia.org/wiki/1992"&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;1992&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;br /&gt;The programming environment was easier to use, and its speed was improved. Notably, forms became instantiable objects, thus laying the foundational concepts of class modules as were later offered in VB4. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;Visual Basic 3.0 was released in the summer of &lt;/strong&gt;&lt;/span&gt;&lt;a title="1993" href="http://en.wikipedia.org/wiki/1993"&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;1993&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt;&lt;strong&gt;;&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt; and came in Standard and Professional versions. VB3 included version 1.1 of the &lt;/span&gt;&lt;a title="Microsoft Jet Database Engine" href="http://en.wikipedia.org/wiki/Microsoft_Jet_Database_Engine"&gt;&lt;span style="font-size:85%;"&gt;Microsoft Jet Database Engine&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; that could read and write Jet (or Access) 1.x databases. Visual Basic 4.0 (August &lt;/span&gt;&lt;a title="1995" href="http://en.wikipedia.org/wiki/1995"&gt;&lt;span style="font-size:85%;"&gt;1995&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;) was the first version that could create &lt;/span&gt;&lt;a title="32-bit" href="http://en.wikipedia.org/wiki/32-bit"&gt;&lt;span style="font-size:85%;"&gt;32-bit&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; as well as &lt;/span&gt;&lt;a title="16-bit" href="http://en.wikipedia.org/wiki/16-bit"&gt;&lt;span style="font-size:85%;"&gt;16-bit&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; Windows programs. It also introduced the ability to write non-GUI classes in Visual Basic. Incompatibilities between different releases of VB4 caused installation and operation problems. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;version 5.0 (February &lt;/strong&gt;&lt;/span&gt;&lt;a title="1997" href="http://en.wikipedia.org/wiki/1997"&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;1997&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;),&lt;/strong&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Microsoft released Visual Basic exclusively for &lt;/span&gt;&lt;a title="32-bit" href="http://en.wikipedia.org/wiki/32-bit"&gt;&lt;span style="font-size:85%;"&gt;32-bit&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; versions of Windows. Programmers who preferred to write 16-bit programs were able to import programs written in Visual Basic 4.0 to Visual Basic 5.0, and Visual Basic 5.0 programs can easily be converted with Visual Basic 4.0. Visual Basic 5.0 also introduced the ability to create custom user controls, as well as the ability to compile to native Windows executable code, speeding up calculation-intensive code execution. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;Visual Basic 6.0 (Mid &lt;/strong&gt;&lt;/span&gt;&lt;a title="1998" href="http://en.wikipedia.org/wiki/1998"&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;1998&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;) &lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;VB6 has entered Microsoft's "non-supported phase" as of March &lt;/span&gt;&lt;a title="2008" href="http://en.wikipedia.org/wiki/2008"&gt;&lt;span style="font-size:85%;"&gt;2008&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;. Mainstream Support for Microsoft Visual Basic 6.0 ended on &lt;/span&gt;&lt;a title="March 31" href="http://en.wikipedia.org/wiki/March_31"&gt;&lt;span style="font-size:85%;"&gt;March 31&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, &lt;/span&gt;&lt;a title="2005" href="http://en.wikipedia.org/wiki/2005"&gt;&lt;span style="font-size:85%;"&gt;2005&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;. Extended support ended in March 2008. In response, the Visual Basic user community expressed its grave concern and lobbied users to sign a petition to keep the product alive. Microsoft has so far refused to change their position on the matter. Ironically, around this time, it was exposed that Microsoft's new anti-spyware offering, &lt;/span&gt;&lt;a title="Microsoft AntiSpyware" href="http://en.wikipedia.org/wiki/Microsoft_AntiSpyware"&gt;&lt;span style="font-size:85%;"&gt;Microsoft AntiSpyware&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; (part of the &lt;/span&gt;&lt;a title="GIANT Company Software" href="http://en.wikipedia.org/wiki/GIANT_Company_Software"&gt;&lt;span style="font-size:85%;"&gt;GIANT Company Software&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; purchase), was coded in Visual Basic 6.0. Windows Defender Beta 2 was rewritten as C++/CLI code.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-8186952384469369522?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/4SXdkgj5Zx_XEN5gHtp57qjpLA0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4SXdkgj5Zx_XEN5gHtp57qjpLA0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/4SXdkgj5Zx_XEN5gHtp57qjpLA0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4SXdkgj5Zx_XEN5gHtp57qjpLA0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/JhkFhsSMPxQ/timeline-of-visual-basic-vb1-to-vb6.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/05/timeline-of-visual-basic-vb1-to-vb6.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-2776743310929484333</guid><pubDate>Tue, 27 May 2008 05:50:00 +0000</pubDate><atom:updated>2008-05-26T22:51:29.675-07:00</atom:updated><title>Characteristics present in Visual Basic</title><description>&lt;p&gt;&lt;span style="font-size:85%;"&gt;Visual Basic has the following traits which differ from C-derived languages: &lt;/span&gt;&lt;a title="Boolean datatype" href="http://en.wikipedia.org/wiki/Boolean_datatype"&gt;&lt;span style="font-size:85%;"&gt;Boolean&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; constant True has numeric value −1.&lt;/span&gt;&lt;a title="" href="http://en.wikipedia.org/wiki/Visual_Basic#cite_note-2"&gt;&lt;span style="font-size:85%;"&gt;[3]&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; This is because the Boolean data type is stored as a 16-bit signed integer. In this construct −1 evaluates to 16 binary 1s (the Boolean value True), and 0 as 16 0s (the Boolean value False). This is apparent when performing a Not operation on a 16 bit signed integer value 0 which will return the integer value −1, in other words True = Not False. This inherent functionality becomes especially useful when performing logical operations on the individual bits of an integer such as And, Or, Xor and Not.&lt;/span&gt;&lt;a title="" href="http://en.wikipedia.org/wiki/Visual_Basic#cite_note-3"&gt;&lt;span style="font-size:85%;"&gt;[4]&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; This definition of True is also consistent with BASIC since the early 1970s Microsoft BASIC implementation and is also related to the characteristics of microprocessor instructions at the time. Logical and bitwise operators are unified. This is unlike all the C-derived languages (such as &lt;/span&gt;&lt;a title="Java (programming language)" href="http://en.wikipedia.org/wiki/Java_(programming_language)"&gt;&lt;span style="font-size:85%;"&gt;Java&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; or &lt;/span&gt;&lt;a title="Perl" href="http://en.wikipedia.org/wiki/Perl"&gt;&lt;span style="font-size:85%;"&gt;Perl&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;), which have separate logical and bitwise operators. This again is a traditional feature of BASIC. Variable &lt;/span&gt;&lt;a title="Array" href="http://en.wikipedia.org/wiki/Array"&gt;&lt;span style="font-size:85%;"&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; base. Arrays are declared by specifying the upper and lower bounds in a way similar to Pascal and &lt;/span&gt;&lt;a title="Fortran" href="http://en.wikipedia.org/wiki/Fortran"&gt;&lt;span style="font-size:85%;"&gt;Fortran&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;. It is also possible to use the Option Base statement to set the default lower bound. Use of the Option Base statement can lead to confusion when reading Visual Basic code and is best avoided by always explicitly specifying the lower bound of the array. This lower bound is not limited to 0 or 1, because it can also be set by declaration. In this way, both the lower and upper bounds are programmable. In more subscript-limited languages, the lower bound of the array is not variable. This uncommon trait does exist in &lt;/span&gt;&lt;a title="Visual Basic .NET" href="http://en.wikipedia.org/wiki/Visual_Basic_.NET"&gt;&lt;span style="font-size:85%;"&gt;Visual Basic .NET&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; but not in &lt;/span&gt;&lt;a title="VBScript" href="http://en.wikipedia.org/wiki/VBScript"&gt;&lt;span style="font-size:85%;"&gt;VBScript&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;. OPTION BASE was introduced by ANSI, with the standard for ANSI Minimal BASIC in the late 1970s. The extension to using a form of DIM A(1976 TO 2020) was first introduced in &lt;/span&gt;&lt;a title="BBC Basic" href="http://en.wikipedia.org/wiki/BBC_Basic"&gt;&lt;span style="font-size:85%;"&gt;BBC Basic&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, found on the &lt;/span&gt;&lt;a title="BBC micro" href="http://en.wikipedia.org/wiki/BBC_micro"&gt;&lt;span style="font-size:85%;"&gt;BBC micro&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, which in turn was influenced by &lt;/span&gt;&lt;a title="COMAL" href="http://en.wikipedia.org/wiki/COMAL"&gt;&lt;span style="font-size:85%;"&gt;COMAL&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;. Relatively strong integration with the &lt;/span&gt;&lt;a title="Windows operating system" href="http://en.wikipedia.org/wiki/Windows_operating_system"&gt;&lt;span style="font-size:85%;"&gt;Windows operating system&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; and the &lt;/span&gt;&lt;a title="Component Object Model" href="http://en.wikipedia.org/wiki/Component_Object_Model"&gt;&lt;span style="font-size:85%;"&gt;Component Object Model&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;. &lt;/span&gt;&lt;a title="Rounding" href="http://en.wikipedia.org/wiki/Rounding#Round-to-even_method"&gt;&lt;span style="font-size:85%;"&gt;Banker's rounding&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; as the default behavior when converting real numbers to integers with the Round function. Integers are automatically promoted to reals in expressions involving the normal division operator (/) so that division of an odd integer by an even integer produces the intuitively correct result. There is a specific integer divide operator (\) which does truncate. By default, if a variable has not been declared or if no type declaration character is specified, the variable is of type &lt;/span&gt;&lt;a title="Variant type" href="http://en.wikipedia.org/wiki/Variant_type"&gt;&lt;span style="font-size:85%;"&gt;Variant&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;. However this can be changed with Deftype statements such as DefInt, DefBool, DefVar, DefObj, DefStr. There are 12 Deftype statements in total offered by Visual Basic 6.0. The default type may be overridden for a specific declaration by using a special suffix character on the variable name (# for Double, ! for Single, &amp;amp; for Long, % for Integer, $ for String, and @ for Currency) or using the key phrase As (type). VB can also be set in a mode that only explicitly declared variables can be used with the command Option Explicit.&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-2776743310929484333?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/BHsiA-RzrXlL7puXeY_iocqN91o/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BHsiA-RzrXlL7puXeY_iocqN91o/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/BHsiA-RzrXlL7puXeY_iocqN91o/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BHsiA-RzrXlL7puXeY_iocqN91o/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/1VL__oAW9OM/characteristics-present-in-visual-basic.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/05/characteristics-present-in-visual-basic.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-4292712891262756339</guid><pubDate>Tue, 27 May 2008 05:47:00 +0000</pubDate><atom:updated>2008-05-26T22:50:09.448-07:00</atom:updated><title>Language features</title><description>&lt;p&gt;&lt;strong&gt;Language features&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:85%;"&gt;Visual Basic was designed to be easy to learn and use. The language not only allows programmers to create simple &lt;/span&gt;&lt;a title="GUI" href="http://en.wikipedia.org/wiki/GUI"&gt;&lt;span style="font-size:85%;"&gt;GUI&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; applications, but can also develop complex applications as well. Programming in VB is a combination of visually arranging &lt;/span&gt;&lt;a title="Component" href="http://en.wikipedia.org/wiki/Component"&gt;&lt;span style="font-size:85%;"&gt;components&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; or &lt;/span&gt;&lt;a title="Control" href="http://en.wikipedia.org/wiki/Control"&gt;&lt;span style="font-size:85%;"&gt;controls&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; on a &lt;/span&gt;&lt;a title="Form" href="http://en.wikipedia.org/wiki/Form"&gt;&lt;span style="font-size:85%;"&gt;form&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, specifying attributes and actions of those components, and writing additional lines of &lt;/span&gt;&lt;a title="Computer code" href="http://en.wikipedia.org/wiki/Computer_code"&gt;&lt;span style="font-size:85%;"&gt;code&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; for more functionality. Since default attributes and actions are defined for the components, a simple program can be created without the programmer having to write many lines of code. Performance problems were experienced by earlier versions, but with faster computers and native code compilation this has become less of an issue. Although programs can be compiled into native code executables &lt;/span&gt;&lt;a title="" href="http://en.wikipedia.org/wiki/Visual_Basic#Timeline"&gt;&lt;span style="font-size:85%;"&gt;from version 5 onwards&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, they still require the presence of runtime libraries of approximately 2 MB in size. This runtime is included by default in &lt;/span&gt;&lt;a title="Windows 2000" href="http://en.wikipedia.org/wiki/Windows_2000"&gt;&lt;span style="font-size:85%;"&gt;Windows 2000&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; and later, but for earlier versions of &lt;/span&gt;&lt;a title="Microsoft Windows" href="http://en.wikipedia.org/wiki/Microsoft_Windows"&gt;&lt;span style="font-size:85%;"&gt;Windows&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; or Windows Vista, it must be distributed together with the executable. Forms are created using &lt;/span&gt;&lt;a title="Drag and drop" href="http://en.wikipedia.org/wiki/Drag_and_drop"&gt;&lt;span style="font-size:85%;"&gt;drag and drop&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; techniques. A tool is used to place controls (e.g., text boxes, buttons, etc.) on the form (window). Controls have &lt;/span&gt;&lt;a title="Attribute" href="http://en.wikipedia.org/wiki/Attribute"&gt;&lt;span style="font-size:85%;"&gt;attributes&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; and &lt;/span&gt;&lt;a title="Event handler" href="http://en.wikipedia.org/wiki/Event_handler"&gt;&lt;span style="font-size:85%;"&gt;event handlers&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; associated with them. Default values are provided when the control is created, but may be changed by the programmer. Many attribute values can be modified during run time based on user actions or changes in the environment, providing a dynamic application. For example, code can be inserted into the form resize event handler to reposition a control so that it remains centered on the form, expands to fill up the form, etc. By inserting code into the event handler for a keypress in a text box, the program can automatically translate the case of the text being entered, or even prevent certain characters from being inserted. Visual Basic can create executables (EXE files), &lt;/span&gt;&lt;a title="ActiveX Control" href="http://en.wikipedia.org/wiki/ActiveX_Control"&gt;&lt;span style="font-size:85%;"&gt;ActiveX controls&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, DLL files, but is primarily used to develop Windows applications and to interface web database systems. Dialog boxes with less functionality (e.g., no maximize/minimize control) can be used to provide pop-up capabilities. Controls provide the basic functionality of the application, while programmers can insert additional logic within the appropriate event handlers. For example, a drop-down combination box will automatically display its list and allow the user to select any element. An event handler is called when an item is selected, which can then execute additional code created by the programmer to perform some action based on which element was selected, such as populating a related list. Alternatively, a Visual Basic component can have no user interface, and instead provide ActiveX objects to other programs via &lt;/span&gt;&lt;a title="Component Object Model" href="http://en.wikipedia.org/wiki/Component_Object_Model"&gt;&lt;span style="font-size:85%;"&gt;Component Object Model&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; (COM). This allows for &lt;/span&gt;&lt;a title="Server-side" href="http://en.wikipedia.org/wiki/Server-side"&gt;&lt;span style="font-size:85%;"&gt;server-side&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; processing or an add-in module. The language is &lt;/span&gt;&lt;a title="Garbage collection (computer science)" href="http://en.wikipedia.org/wiki/Garbage_collection_(computer_science)"&gt;&lt;span style="font-size:85%;"&gt;garbage collected&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; using &lt;/span&gt;&lt;a title="Reference counting" href="http://en.wikipedia.org/wiki/Reference_counting"&gt;&lt;span style="font-size:85%;"&gt;reference counting&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, has a large library of utility objects, and has basic &lt;/span&gt;&lt;a title="Object-oriented programming" href="http://en.wikipedia.org/wiki/Object-oriented_programming"&gt;&lt;span style="font-size:85%;"&gt;object oriented support&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;. Since the more common components are included in the default project template, the programmer seldom needs to specify additional libraries. Unlike many other programming languages, Visual Basic is generally not case sensitive, although it will transform &lt;/span&gt;&lt;a title="Keywords" href="http://en.wikipedia.org/wiki/Keywords"&gt;&lt;span style="font-size:85%;"&gt;keywords&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; into a standard case configuration and force the case of variable names to conform to the case of the entry within the symbol table entry. String comparisons are case sensitive by default, but can be made case insensitive if so desired. The Visual Basic compiler is shared with other Visual Studio languages (C, C++), but restrictions in the IDE do not allow the creation of some targets (Windows model DLL's) and threading models.&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-4292712891262756339?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Sh_vV-zSuVEUazfzlkHa11gx3SY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Sh_vV-zSuVEUazfzlkHa11gx3SY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Sh_vV-zSuVEUazfzlkHa11gx3SY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Sh_vV-zSuVEUazfzlkHa11gx3SY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/zQ0hWT-hufg/language-features.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/05/language-features.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-8095366463821181595.post-4401939284410695361</guid><pubDate>Tue, 27 May 2008 05:09:00 +0000</pubDate><atom:updated>2008-05-26T23:10:07.339-07:00</atom:updated><title>Visual Basic</title><description>&lt;strong&gt;Visual Basic&lt;br /&gt;&lt;/strong&gt;&lt;span style="font-size:85%;"&gt;From Wikipedia, the free encyclopedia&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;This article is about the Visual Basic language shipping with Microsoft Visual Studio 6.0 and earlier. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Visual Basic (VB) is a &lt;/span&gt;&lt;a title="Third-generation programming language" href="http://en.wikipedia.org/wiki/Third-generation_programming_language"&gt;&lt;span style="font-size:85%;"&gt;third-generation&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;a class="mw-redirect" title="Event driven programming language" href="http://en.wikipedia.org/wiki/Event_driven_programming_language"&gt;&lt;span style="font-size:85%;"&gt;event driven programming language&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; and associated &lt;/span&gt;&lt;a title="Integrated development environment" href="http://en.wikipedia.org/wiki/Integrated_development_environment"&gt;&lt;span style="font-size:85%;"&gt;development environment&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; (IDE) from &lt;/span&gt;&lt;a title="Microsoft" href="http://en.wikipedia.org/wiki/Microsoft"&gt;&lt;span style="font-size:85%;"&gt;Microsoft&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; for its &lt;/span&gt;&lt;a title="Component Object Model" href="http://en.wikipedia.org/wiki/Component_Object_Model"&gt;&lt;span style="font-size:85%;"&gt;COM&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; programming model.&lt;/span&gt;&lt;a title="" href="http://en.wikipedia.org/wiki/Visual_Basic#cite_note-0"&gt;&lt;span style="font-size:85%;"&gt;[1]&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; Visual Basic was derived from &lt;/span&gt;&lt;a class="mw-redirect" title="BASIC programming language" href="http://en.wikipedia.org/wiki/BASIC_programming_language"&gt;&lt;span style="font-size:85%;"&gt;BASIC&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; and enables the &lt;/span&gt;&lt;a title="Rapid application development" href="http://en.wikipedia.org/wiki/Rapid_application_development"&gt;&lt;span style="font-size:85%;"&gt;rapid application development (RAD)&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; of &lt;/span&gt;&lt;a title="Graphical user interface" href="http://en.wikipedia.org/wiki/Graphical_user_interface"&gt;&lt;span style="font-size:85%;"&gt;graphical user interface (GUI)&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; applications, access to &lt;/span&gt;&lt;a title="Database" href="http://en.wikipedia.org/wiki/Database"&gt;&lt;span style="font-size:85%;"&gt;databases&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; using &lt;/span&gt;&lt;a title="Data Access Objects" href="http://en.wikipedia.org/wiki/Data_Access_Objects"&gt;&lt;span style="font-size:85%;"&gt;DAO&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, &lt;/span&gt;&lt;a title="Remote Data Objects" href="http://en.wikipedia.org/wiki/Remote_Data_Objects"&gt;&lt;span style="font-size:85%;"&gt;RDO&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, or &lt;/span&gt;&lt;a title="ActiveX Data Objects" href="http://en.wikipedia.org/wiki/ActiveX_Data_Objects"&gt;&lt;span style="font-size:85%;"&gt;ADO&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, and creation of &lt;/span&gt;&lt;a title="ActiveX" href="http://en.wikipedia.org/wiki/ActiveX"&gt;&lt;span style="font-size:85%;"&gt;ActiveX&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; controls and objects. &lt;/span&gt;&lt;a class="mw-redirect" title="Scripting languages" href="http://en.wikipedia.org/wiki/Scripting_languages"&gt;&lt;span style="font-size:85%;"&gt;Scripting languages&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; such as &lt;/span&gt;&lt;a title="Visual Basic for Applications" href="http://en.wikipedia.org/wiki/Visual_Basic_for_Applications"&gt;&lt;span style="font-size:85%;"&gt;VBA&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; and &lt;/span&gt;&lt;a title="VBScript" href="http://en.wikipedia.org/wiki/VBScript"&gt;&lt;span style="font-size:85%;"&gt;VBScript&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; are syntactically similar to Visual Basic, but perform differently.&lt;/span&gt;&lt;a title="" href="http://en.wikipedia.org/wiki/Visual_Basic#cite_note-1"&gt;&lt;span style="font-size:85%;"&gt;[2]&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;A programmer can put together an application using the &lt;/span&gt;&lt;a class="mw-redirect" title="Software component" href="http://en.wikipedia.org/wiki/Software_component"&gt;&lt;span style="font-size:85%;"&gt;components&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; provided with Visual Basic itself. Programs written in Visual Basic can also use the &lt;/span&gt;&lt;a title="Windows API" href="http://en.wikipedia.org/wiki/Windows_API"&gt;&lt;span style="font-size:85%;"&gt;Windows API&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, but doing so requires external function declarations.&lt;br /&gt;The final release was version 6 in 1998. Microsoft's extended support ended in February 2008 and the designated successor was &lt;/span&gt;&lt;a title="Visual Basic .NET" href="http://en.wikipedia.org/wiki/Visual_Basic_.NET"&gt;&lt;span style="font-size:85%;"&gt;Visual Basic .NET&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;------------------------------------  Bahasa -----------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Dari Wikipedia Indonesia, ensiklopedia bebas berbahasa Indonesia.&lt;br /&gt;Langsung ke: &lt;/span&gt;&lt;a href="http://id.wikipedia.org/wiki/Visual_Basic#column-one"&gt;&lt;span style="font-size:85%;"&gt;navigasi&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, &lt;/span&gt;&lt;a href="http://id.wikipedia.org/wiki/Visual_Basic#searchInput"&gt;&lt;span style="font-size:85%;"&gt;cari&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Microsoft Visual Basic (sering disingkat sebagai VB saja) merupakan sebuah bahasa pemrograman yang bersifat &lt;/span&gt;&lt;a class="new" title="Bahasa pemrograman event-driven (belum dibuat)" href="http://id.wikipedia.org/w/index.php?title=Bahasa_pemrograman_event-driven&amp;amp;action=edit&amp;amp;redlink=1"&gt;&lt;span style="font-size:85%;"&gt;event driven&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; dan menawarkan &lt;/span&gt;&lt;a title="Integrated Development Environment" href="http://id.wikipedia.org/wiki/Integrated_Development_Environment"&gt;&lt;span style="font-size:85%;"&gt;Integrated Development Environment&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; (IDE) visual untuk membuat &lt;/span&gt;&lt;a title="Program komputer" href="http://id.wikipedia.org/wiki/Program_komputer"&gt;&lt;span style="font-size:85%;"&gt;program&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; aplikasi berbasis &lt;/span&gt;&lt;a title="Sistem operasi" href="http://id.wikipedia.org/wiki/Sistem_operasi"&gt;&lt;span style="font-size:85%;"&gt;sistem operasi&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;a class="mw-redirect" title="Microsoft Windows" href="http://id.wikipedia.org/wiki/Microsoft_Windows"&gt;&lt;span style="font-size:85%;"&gt;Microsoft Windows&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; dengan menggunakan model pemrograman &lt;/span&gt;&lt;a class="new" title="Common Object Model (belum dibuat)" href="http://id.wikipedia.org/w/index.php?title=Common_Object_Model&amp;amp;action=edit&amp;amp;redlink=1"&gt;&lt;span style="font-size:85%;"&gt;Common Object Model&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; (COM). Visual Basic merupakan turunan bahasa &lt;/span&gt;&lt;a title="BASIC" href="http://id.wikipedia.org/wiki/BASIC"&gt;&lt;span style="font-size:85%;"&gt;BASIC&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; dan menawarkan pengembangan aplikasi &lt;/span&gt;&lt;a title="Komputer" href="http://id.wikipedia.org/wiki/Komputer"&gt;&lt;span style="font-size:85%;"&gt;komputer&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; berbasis &lt;/span&gt;&lt;a class="mw-redirect" title="GUI" href="http://id.wikipedia.org/wiki/GUI"&gt;&lt;span style="font-size:85%;"&gt;grafik&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; dengan cepat, akses ke &lt;/span&gt;&lt;a title="Basis data" href="http://id.wikipedia.org/wiki/Basis_data"&gt;&lt;span style="font-size:85%;"&gt;basis data&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; menggunakan &lt;/span&gt;&lt;a class="new" title="Data Access Objects (belum dibuat)" href="http://id.wikipedia.org/w/index.php?title=Data_Access_Objects&amp;amp;action=edit&amp;amp;redlink=1"&gt;&lt;span style="font-size:85%;"&gt;Data Access Objects&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; (DAO), &lt;/span&gt;&lt;a class="new" title="Remote Data Objects (belum dibuat)" href="http://id.wikipedia.org/w/index.php?title=Remote_Data_Objects&amp;amp;action=edit&amp;amp;redlink=1"&gt;&lt;span style="font-size:85%;"&gt;Remote Data Objects&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; (RDO), atau &lt;/span&gt;&lt;a class="new" title="ActiveX Data Object (belum dibuat)" href="http://id.wikipedia.org/w/index.php?title=ActiveX_Data_Object&amp;amp;action=edit&amp;amp;redlink=1"&gt;&lt;span style="font-size:85%;"&gt;ActiveX Data Object&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; (ADO), serta menawarkan pembuatan kontrol ActiveX dan objek ActiveX. Beberapa &lt;/span&gt;&lt;a title="Bahasa skrip" href="http://id.wikipedia.org/wiki/Bahasa_skrip"&gt;&lt;span style="font-size:85%;"&gt;bahasa skrip&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; seperti &lt;/span&gt;&lt;a title="Visual Basic for Applications" href="http://id.wikipedia.org/wiki/Visual_Basic_for_Applications"&gt;&lt;span style="font-size:85%;"&gt;Visual Basic for Applications&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; (VBA) dan &lt;/span&gt;&lt;a class="mw-redirect" title="Visual Basic Scripting Edition" href="http://id.wikipedia.org/wiki/Visual_Basic_Scripting_Edition"&gt;&lt;span style="font-size:85%;"&gt;Visual Basic Scripting Edition&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; (VBScript), mirip seperti halnya Visual Basic, tetapi cara kerjanya yang berbeda.&lt;br /&gt;Para programmer dapat membangun aplikasi dengan menggunakan komponen-komponen yang disediakan oleh Microsoft Visual Basic Program-program yang ditulis dengan Visual Basic juga dapat menggunakan &lt;/span&gt;&lt;a class="mw-redirect" title="Windows API" href="http://id.wikipedia.org/wiki/Windows_API"&gt;&lt;span style="font-size:85%;"&gt;Windows API&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, tapi membutuhkan deklarasi fungsi eksternal tambahan.&lt;br /&gt;Dalam pemrograman untuk bisnis, Visual Basic memiliki pangsa pasar yang sangat luas. Dalam sebuah survey yang dilakukan pada tahun &lt;/span&gt;&lt;a title="2005" href="http://id.wikipedia.org/wiki/2005"&gt;&lt;span style="font-size:85%;"&gt;2005&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, 62% pengembang perangkat lunak dilaporkan menggunakan berbagai bentuk Visual Basic, yang diikuti oleh &lt;/span&gt;&lt;a title="C++" href="http://id.wikipedia.org/wiki/C%2B%2B"&gt;&lt;span style="font-size:85%;"&gt;C++&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, &lt;/span&gt;&lt;a title="JavaScript" href="http://id.wikipedia.org/wiki/JavaScript"&gt;&lt;span style="font-size:85%;"&gt;JavaScript&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, &lt;/span&gt;&lt;a title="C sharp" href="http://id.wikipedia.org/wiki/C_sharp"&gt;&lt;span style="font-size:85%;"&gt;C#&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, dan &lt;/span&gt;&lt;a title="Java" href="http://id.wikipedia.org/wiki/Java"&gt;&lt;span style="font-size:85%;"&gt;Java&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8095366463821181595-4401939284410695361?l=programmervb.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/a2SFvr2wVUX5qlfbYYcIJMTudLw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/a2SFvr2wVUX5qlfbYYcIJMTudLw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/a2SFvr2wVUX5qlfbYYcIJMTudLw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/a2SFvr2wVUX5qlfbYYcIJMTudLw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;</description><link>http://feedproxy.google.com/~r/VisualBasicProgrammer/~3/s0AyKUMtz9k/visual-basic.html</link><author>noreply@blogger.com (Kaleng)</author><thr:total>0</thr:total><feedburner:origLink>http://programmervb.blogspot.com/2008/05/visual-basic.html</feedburner:origLink></item><language>en-us</language><media:rating>nonadult</media:rating></channel></rss>

