<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7834066955195879585</id><updated>2024-09-13T12:05:54.639+07:00</updated><category term="Aticle Privacy Statement"/><category term="Java tutorial"/><category term="Unknow XP Secrets"/><category term="VBScript"/><category term="VBScript open folder"/><category term="routing"/><title type='text'>ARTICLE &amp;amp; SOFTWARE</title><subtitle type='html'>THIS ARTICLE &amp;amp; SOFTWARE</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://czta.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7834066955195879585/posts/default'/><link rel='alternate' type='text/html' href='http://czta.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>onand_bach</name><uri>http://www.blogger.com/profile/03231516849840408640</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjnRKLSps3YpXr--QyUw6i6EgkzaVbp_84FS9Jp23CERWfKR2mS3veSw6YGo-9ZavHkoBOabPqH1deYLuE7iXWpWSyr2l6EHcbbuOUO2Sb_oFDsIoGb1PQHoshNbTBDYg/s220/kadaj1.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>6</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7834066955195879585.post-6212155204836334203</id><published>2009-01-23T02:51:00.002+07:00</published><updated>2009-01-23T03:09:36.380+07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Java tutorial"/><title type='text'>Java tutorial</title><content type='html'>Java: Example - Bouncing Ball&lt;br /&gt;&lt;br /&gt; This program does a simple animation. Animation is done by creating a timer which calls an ActionListener at fixed intervals (eg, every 35 milliseconds). The listener tells the ball to move it&#39;s coordinates a little, then it repaints the panel. repaint() indirectly calls our paintComponent() method, which then draws the ball with the updated coordinates.&lt;br /&gt;BBDemo.java - The main program and window creation&lt;br /&gt;&lt;br /&gt;// File: animation/bb/BBDemo.java&lt;br /&gt;// Description: Illustrates animation with a ball bouncing in a box&lt;br /&gt;//              Possible extensions: faster/slower button,&lt;br /&gt;// Author: Fred Swartz&lt;br /&gt;// Date:   February 2005 ...&lt;br /&gt;&lt;br /&gt;import javax.swing.*;&lt;br /&gt;&lt;br /&gt;/////////////////////////////////////////////////////////////// BBDemo&lt;br /&gt;public class BBDemo extends JApplet {&lt;br /&gt;    &lt;br /&gt;    //============================================== applet constructor&lt;br /&gt;    public BBDemo() {&lt;br /&gt;        add(new BBPanel());&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    //============================================================ main&lt;br /&gt;    public static void main(String[] args) {&lt;br /&gt;        JFrame win = new JFrame(&quot;Bouncing Ball Demo&quot;);&lt;br /&gt;        win.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;        &lt;br /&gt;        win.setContentPane(new BBPanel());&lt;br /&gt;        &lt;br /&gt;        win.pack();&lt;br /&gt;        win.setVisible(true); &lt;br /&gt;    }&lt;br /&gt;}//endclass BBDemo&lt;br /&gt;&lt;br /&gt;BBPanel.java - The JPanel which organizes the GUI&lt;br /&gt;&lt;br /&gt;// File:  animation/bb/BBPanel.java&lt;br /&gt;// Description: Panel to layout buttons and graphics area.&lt;br /&gt;// Author: Fred Swartz&lt;br /&gt;// Date:   February 2005&lt;br /&gt;&lt;br /&gt;import java.awt.*;&lt;br /&gt;import java.awt.event.*;&lt;br /&gt;import javax.swing.*;&lt;br /&gt;&lt;br /&gt;/////////////////////////////////////////////////////////////////// BBPanel&lt;br /&gt;class BBPanel extends JPanel {&lt;br /&gt;    BallInBox m_bb;   // The bouncing ball panel&lt;br /&gt;    &lt;br /&gt;    //========================================================== constructor&lt;br /&gt;    /** Creates a panel with the controls and bouncing ball display. */&lt;br /&gt;    BBPanel() {&lt;br /&gt;        //... Create components&lt;br /&gt;        m_bb = new BallInBox();        &lt;br /&gt;        JButton startButton = new JButton(&quot;Start&quot;);        &lt;br /&gt;        JButton stopButton  = new JButton(&quot;Stop&quot;);&lt;br /&gt;        &lt;br /&gt;        //... Add Listeners&lt;br /&gt;        startButton.addActionListener(new StartAction());&lt;br /&gt;        stopButton.addActionListener(new StopAction());&lt;br /&gt;        &lt;br /&gt;        //... Layout inner panel with two buttons horizontally&lt;br /&gt;        JPanel buttonPanel = new JPanel();&lt;br /&gt;        buttonPanel.setLayout(new FlowLayout());&lt;br /&gt;        buttonPanel.add(startButton);&lt;br /&gt;        buttonPanel.add(stopButton);&lt;br /&gt;        &lt;br /&gt;        //... Layout outer panel with button panel above bouncing ball&lt;br /&gt;        this.setLayout(new BorderLayout());&lt;br /&gt;        this.add(buttonPanel, BorderLayout.NORTH);&lt;br /&gt;        this.add(m_bb       , BorderLayout.CENTER);&lt;br /&gt;    }//end constructor&lt;br /&gt;    &lt;br /&gt;    &lt;br /&gt;    ////////////////////////////////////// inner listener class StartAction&lt;br /&gt;    class StartAction implements ActionListener {&lt;br /&gt;        public void actionPerformed(ActionEvent e) {&lt;br /&gt;            m_bb.setAnimation(true);&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    &lt;br /&gt;    //////////////////////////////////////// inner listener class StopAction&lt;br /&gt;    class StopAction implements ActionListener {&lt;br /&gt;        public void actionPerformed(ActionEvent e) {&lt;br /&gt;            m_bb.setAnimation(false);&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}//endclass BBPanel&lt;br /&gt;&lt;br /&gt;BallInBox.java - The graphics panel that does the animation.&lt;br /&gt;&lt;br /&gt;// File:   animation/bb/BouncingBall.java&lt;br /&gt;// Description: This Graphics panel simulates a ball bouncing in a box.&lt;br /&gt;//         Animation is done by changing instance variables&lt;br /&gt;//         in the timer&#39;s actionListener, then calling repaint().&lt;br /&gt;//         * Flicker can be reduced by drawing into a BufferedImage, &lt;br /&gt;//           and/or using a clip region.&lt;br /&gt;//         * The edge of the oval could be antialiased (using Graphics2).&lt;br /&gt;// Author: Fred Swartz&lt;br /&gt;// Date:   February 2005&lt;br /&gt;&lt;br /&gt;import java.awt.*;&lt;br /&gt;import java.awt.event.*;&lt;br /&gt;import javax.swing.*;&lt;br /&gt;import javax.swing.event.*;&lt;br /&gt;&lt;br /&gt;/////////////////////////////////////////////////////////////// BouncingBall&lt;br /&gt;public class BallInBox extends JPanel {&lt;br /&gt;    //============================================== fields&lt;br /&gt;    //... Instance variables representing the ball.&lt;br /&gt;    private Ball m_ball         = new Ball(0, 0, 2, 3);&lt;br /&gt;    &lt;br /&gt;    //... Instance variables for the animiation&lt;br /&gt;    private int   m_interval  = 35;  // Milliseconds between updates.&lt;br /&gt;    private Timer m_timer;           // Timer fires to anmimate one step.&lt;br /&gt;&lt;br /&gt;    //========================================================== constructor&lt;br /&gt;    /** Set panel size and creates timer. */&lt;br /&gt;    public BallInBox() {&lt;br /&gt;        setPreferredSize(new Dimension(200, 80));&lt;br /&gt;        setBorder(BorderFactory.createLineBorder(Color.BLACK));&lt;br /&gt;        m_timer = new Timer(m_interval, new TimerAction());&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    //========================================================= setAnimation&lt;br /&gt;    /** Turn animation on or off.&lt;br /&gt;     *@param turnOnOff Specifies state of animation.&lt;br /&gt;     */&lt;br /&gt;    public void setAnimation(boolean turnOnOff) {&lt;br /&gt;        if (turnOnOff) {&lt;br /&gt;            m_timer.start();  // start animation by starting the timer.&lt;br /&gt;        } else {&lt;br /&gt;            m_timer.stop();   // stop timer&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    //======================================================= paintComponent&lt;br /&gt;    public void paintComponent(Graphics g) {&lt;br /&gt;        super.paintComponent(g);  // Paint background, border&lt;br /&gt;        m_ball.draw(g);           // Draw the ball.&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    //////////////////////////////////// inner listener class ActionListener&lt;br /&gt;    class TimerAction implements ActionListener {&lt;br /&gt;        //================================================== actionPerformed&lt;br /&gt;        /** ActionListener of the timer.  Each time this is called,&lt;br /&gt;         *  the ball&#39;s position is updated, creating the appearance of&lt;br /&gt;         *  movement.&lt;br /&gt;         *@param e This ActionEvent parameter is unused.&lt;br /&gt;         */&lt;br /&gt;        public void actionPerformed(ActionEvent e) {&lt;br /&gt;            m_ball.setBounds(getWidth(), getHeight());&lt;br /&gt;            m_ball.move();  // Move the ball.&lt;br /&gt;            repaint();      // Repaint indirectly calls paintComponent.&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}//endclass&lt;br /&gt;&lt;br /&gt;Ball.java - The logic/model of the ball.&lt;br /&gt;&lt;br /&gt;This class holds the information about the ball, its diameter, position, and velocity. Other attributes are possible (eg, color). This ball knows nothing about animation, only about its current state, how to update its coordinates, and how to draw itself.&lt;br /&gt;&lt;br /&gt;// File: animation/bb/BallModel.java&lt;br /&gt;// Description: The logic / model of a ball.&lt;br /&gt;// Author: Fred Swartz&lt;br /&gt;// Date:   February 2005&lt;br /&gt;&lt;br /&gt;import java.awt.*;&lt;br /&gt;&lt;br /&gt;///////////////////////////////////////////////////////////////// BallModel&lt;br /&gt;public class Ball {&lt;br /&gt;    //... Constants&lt;br /&gt;    final static int DIAMETER = 21;&lt;br /&gt;    &lt;br /&gt;    //... Instance variables&lt;br /&gt;    private int m_x;           // x and y coordinates upper left&lt;br /&gt;    private int m_y;&lt;br /&gt;    &lt;br /&gt;    private int m_velocityX;   // Pixels to move each time move() is called.&lt;br /&gt;    private int m_velocityY;&lt;br /&gt;    &lt;br /&gt;    private int m_rightBound;  // Maximum permissible x, y values.&lt;br /&gt;    private int m_bottomBound;&lt;br /&gt;    &lt;br /&gt;    //======================================================== constructor&lt;br /&gt;    public Ball(int x, int y, int velocityX, int velocityY) {&lt;br /&gt;        m_x = x;&lt;br /&gt;        m_y = y;&lt;br /&gt;        m_velocityX = velocityX;&lt;br /&gt;        m_velocityY = velocityY;&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    //======================================================== setBounds&lt;br /&gt;    public void setBounds(int width, int height) {&lt;br /&gt;        m_rightBound  = width  - DIAMETER;&lt;br /&gt;        m_bottomBound = height - DIAMETER;&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    //============================================================== move&lt;br /&gt;    public void move() {&lt;br /&gt;        //... Move the ball at the give velocity.&lt;br /&gt;        m_x += m_velocityX;&lt;br /&gt;        m_y += m_velocityY;        &lt;br /&gt;        &lt;br /&gt;        //... Bounce the ball off the walls if necessary.&lt;br /&gt;        if (m_x &lt; 0) {                  // If at or beyond left side&lt;br /&gt;            m_x         = 0;            // Place against edge and&lt;br /&gt;            m_velocityX = -m_velocityX; // reverse direction.&lt;br /&gt;            &lt;br /&gt;        } else if (m_x &gt; m_rightBound) { // If at or beyond right side&lt;br /&gt;            m_x         = m_rightBound;    // Place against right edge.&lt;br /&gt;            m_velocityX = -m_velocityX;  // Reverse direction.&lt;br /&gt;        }&lt;br /&gt;        &lt;br /&gt;        if (m_y &lt; 0) {                 // if we&#39;re at top&lt;br /&gt;            m_y       = 0;&lt;br /&gt;            m_velocityY = -m_velocityY;&lt;br /&gt;            &lt;br /&gt;        } else if (m_y &gt; m_bottomBound) { // if we&#39;re at bottom&lt;br /&gt;            m_y       =  m_bottomBound;&lt;br /&gt;            m_velocityY = -m_velocityY;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    //============================================================== draw&lt;br /&gt;    public void draw(Graphics g) {&lt;br /&gt;        g.fillOval(m_x, m_y, DIAMETER, DIAMETER);&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    //============================================= getDiameter, getX, getY&lt;br /&gt;    public int  getDiameter() { return DIAMETER;}&lt;br /&gt;    public int  getX()        { return m_x;}&lt;br /&gt;    public int  getY()        { return m_y;}&lt;br /&gt;    &lt;br /&gt;    //======================================================== setPosition&lt;br /&gt;    public void setPosition(int x, int y) {&lt;br /&gt;        m_x = x;&lt;br /&gt;        m_y = y;&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Copyleft 2005 Fred Swartz MIT License</content><link rel='replies' type='application/atom+xml' href='http://czta.blogspot.com/feeds/6212155204836334203/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://czta.blogspot.com/2009/01/java-tutorial.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7834066955195879585/posts/default/6212155204836334203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7834066955195879585/posts/default/6212155204836334203'/><link rel='alternate' type='text/html' href='http://czta.blogspot.com/2009/01/java-tutorial.html' title='Java tutorial'/><author><name>onand_bach</name><uri>http://www.blogger.com/profile/03231516849840408640</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjnRKLSps3YpXr--QyUw6i6EgkzaVbp_84FS9Jp23CERWfKR2mS3veSw6YGo-9ZavHkoBOabPqH1deYLuE7iXWpWSyr2l6EHcbbuOUO2Sb_oFDsIoGb1PQHoshNbTBDYg/s220/kadaj1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7834066955195879585.post-3973585999820563829</id><published>2009-01-16T12:08:00.000+07:00</published><updated>2009-01-16T12:09:39.568+07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Unknow XP Secrets"/><title type='text'>Unknown XP Secrets</title><content type='html'>Hidden Programs In Windows Xp&lt;br /&gt;1) Private Character Editor&lt;br /&gt;This program is for designing icons and Characters(Alphapet)&lt;br /&gt;cl!ck :start&lt;br /&gt;Then :run&lt;br /&gt;type :EUDCEDIT&lt;br /&gt;.................................................. .................................................. .............................................&lt;br /&gt;2) iExpress&lt;br /&gt;&lt;br /&gt;This Program is for converting your files to EXECUTABLE files&lt;br /&gt;cl!ck : start&lt;br /&gt;Then : run&lt;br /&gt;type : iexpress&lt;br /&gt;.................................................. .................................................. .............................................&lt;br /&gt;3)Disk Cleanup&lt;br /&gt;This program used for cleaning harddisk to offer space&lt;br /&gt;cl!ck : start&lt;br /&gt;Then : run&lt;br /&gt;type : cleanmgr&lt;br /&gt;&lt;br /&gt;.................................................. .................................................. .............................................&lt;br /&gt;4)Dr Watson&lt;br /&gt;This program Is for repairing problems in Windows&lt;br /&gt;cl!ck : start&lt;br /&gt;Then : run&lt;br /&gt;type : drwtsn32&lt;br /&gt;.................................................. .................................................. .............................................&lt;br /&gt;5)Windows Media Player 5.1&lt;br /&gt;Opens the old media player&lt;br /&gt;cl!ck : start&lt;br /&gt;Then : run&lt;br /&gt;type : mplay32&lt;br /&gt;.................................................. .................................................. .............................................&lt;br /&gt;Well Some More XP Secrets&lt;br /&gt;&lt;br /&gt;Windows XP - Secrets&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Deleting System Softwares:&lt;br /&gt;&lt;br /&gt;XP hides some system software you might want to remove, such as Windows Messenger, but you can tickle it and make it disgorge everything. Using Notepad or Edit, edit the text file /windows/inf/ sysoc.inf, search for the word &#39;hide&#39; and remove it. You can then go to the Add or Remove Programs in the Control Panel, select Add/Remove Windows Components and there will be your prey, exposed and vulnerable.&lt;br /&gt;&lt;br /&gt;================================================== =================&lt;br /&gt;&lt;br /&gt;Creating Shutdown Icon or One cl!ck Shutdown:&lt;br /&gt;&lt;br /&gt;Navigate to your desktop. On the desktop, right-cl!ck and go to New, then to Shortcut (in other words, create a new shortcut). You should now see a pop-up window instructing you to enter a command line path.&lt;br /&gt;Use this path in &quot;Type Location of the Item&quot;&lt;br /&gt;SHUTDOWN -s -t 01&lt;br /&gt;If the C: drive is not your local hard drive, then replace &quot;C&quot; with the correct letter of the hard drive. cl!ck the &quot;Next&quot; button. Name the shortcut and cl!ck the &quot;Finish&quot; button. Now whenever you want to shut down, just cl!ck on this shortcut and you&#39;re done.&lt;br /&gt;&lt;br /&gt;================================================== =================&lt;br /&gt;&lt;br /&gt;Increasing Band-Width By 20%:&lt;br /&gt;&lt;br /&gt;Microsoft reserves 20% of your available bandwidth for their own purposes like Windows Updates and interrogating your PC etc&lt;br /&gt;&lt;br /&gt;To get it back:&lt;br /&gt;&lt;br /&gt;cl!ck Start then Run and type &quot; gpedit.msc&quot; without quotes.This opens the group policy editor. Then go to:&lt;br /&gt;Local Computer Policy then Computer Configuration then Administrative Templates then Network then QOS Packet Scheduler and then to Limit Reservable Bandwidth.&lt;br /&gt;Double cl!ck on Limit Reservable bandwidth. It will say it is not configured, but the truth is under the &#39;Explain&#39; tab i.e.&quot;By default, the Packet Scheduler limits the system to 20 percent of the bandwidth of a connection, but you can use this setting to override the default.&quot;&lt;br /&gt;So the trick is to ENABLE reservable bandwidth, then set it to ZERO. This will allow the system to reserve nothing, rather than the default 20%.It works on Win 2000 as well.&lt;br /&gt;&lt;br /&gt;================================================== =================&lt;br /&gt;&lt;br /&gt;Renaming The Recycle Bin icon:&lt;br /&gt;&lt;br /&gt;To change the name of the Recycle Bin desktop icon, cl!ck Start then goto Run, write Regedit and press Enter. It opens Registry Editor. Now in Registry Editor go to:&lt;br /&gt;&lt;br /&gt;HKEY_CLASSES_ ROOT/CLSID/ {645FF040- 5081-101B- 9F08-00AA002F954 E}&lt;br /&gt;and change the name &quot;Recycle Bin&quot; to whatever you want (don&#39;t type any quotes).&lt;br /&gt;&lt;br /&gt;Managing Tasks:&lt;br /&gt;You can at last get rid of tasks on the computer from the command line by using &#39;taskkill /pid&#39; and the task number, or just &#39;tskill&#39; and the process number. Find that out by typing &#39;tasklist&#39;, which will also tell you a lot about what&#39;s going on in your system.&lt;br /&gt;&lt;br /&gt;================================================== =================&lt;br /&gt;&lt;br /&gt;Removing Shared Documents folder From My Computer window:&lt;br /&gt;&lt;br /&gt;Open registry editor by going to Start then Run and entering regedit. Once in registry, navigate to key&lt;br /&gt;&lt;br /&gt;HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Explorer \ My Computer \ NameSpace \ DelegateFolders&lt;br /&gt;&lt;br /&gt;You must see a sub-key named {59031a47-3f72- 44a7-89c5- 5595fe6b30ee} . If you delete this key, you have effectively removed the my shared documents folder.&lt;br /&gt;&lt;br /&gt;================================================== =================&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Improving the Slow Boot up time:&lt;br /&gt;&lt;br /&gt;There are a variety of reasons why your windows XP system would boot slowly. Most of the times it this has to do with the startup applications. If you would like to speed up the bootup sequence, consider removing some of the startup applications that you do not need. Easiest way to remove startup apps is through System Configuration Utility. Go to Start then Run and enter MSCONFIG and go to the Startup tab. Deselect/UnCheck application( s) that you do not want to startup at boot time.&lt;br /&gt;&lt;br /&gt;================================================== =================&lt;br /&gt;&lt;br /&gt;Customize Logon prompt with your Own Words:&lt;br /&gt;&lt;br /&gt;Open Registry by going to Start then Run, entering regedit and Navigate to [HKEY_LOCAL_ MACHINE\SOFTWARE \Microsoft\ Windows NT\CurrentVersion\ Winlogon] . In right pane, look for key by the name &quot;LogonPrompt&quot; . Set its value to whatever text you want to see displayed at login screen.&lt;br /&gt;&lt;br /&gt;IP address of your connection:&lt;br /&gt;Go to Start then Run. Enter &#39;cmd&#39; and then enter &#39;ipconfig&#39; .Add the &#39;/all&#39; switch for more info .&lt;br /&gt;&lt;br /&gt;================================================== =================&lt;br /&gt;&lt;br /&gt;Making Folders Private:&lt;br /&gt;Open My Computer Double-cl!ck the drive where Windows is installed (usually drive (C, unless you have more than one drive on your computer). If the contents of the drive are hidden, under System Tasks, cl!ck Show the contents of this drive.&lt;br /&gt;Double-cl!ck the Documents and Settings folder. Double-cl!ck your user folder. Right-cl!ck any folder in your user profile, and then cl!ck Properties. On the Sharing tab, select the Make this folder private so that only I have access to it check box.&lt;br /&gt;&lt;br /&gt;================================================== =================&lt;br /&gt;&lt;br /&gt;To change Drive Letters:&lt;br /&gt;Go to Start &gt; Control Panel &gt; Administrative Tools &gt; Computer Management, Disk Management, then right-cl!ck the partition whose name you want to change (cl!ck in the white area just below the word &quot;Volume&quot;) and select &quot;change drive letter and paths.&quot;&lt;br /&gt;From here you can add, remove or change drive letters and paths to the partition.&lt;br /&gt;&lt;br /&gt;================================================== =================&lt;br /&gt;&lt;br /&gt;Removing the Shortcut arrow from Desktop Icons:&lt;br /&gt;Goto Start then Run and Enter regedit. Navigate to HKEY_CLASSES_ ROOTlnkfile. Delete the IsShortcut registry value. You may need to restart Windows XP.&lt;br /&gt;&lt;br /&gt;Get Drivers for your Devices:&lt;br /&gt;Visit Windows Update (XP Only)&lt;br /&gt;Look at the left hand pane and under Other Options cl!ck Personalize Windows Update.&lt;br /&gt;Now in the right hand pane check the box - Display the link to the Windows Update Catalog under See Also&lt;br /&gt;Below Choose which categories and updates to display on Windows Update - make sure you check all the boxes you want shown.&lt;br /&gt;cl!ck Save Settings&lt;br /&gt;Now look in the left hand pane under See Also cl!ck Windows Update Catalog and choose what you&#39;re looking for. Choose either MS updates or drivers for hardware devices.&lt;br /&gt;Start the Wizard and off you go.&lt;br /&gt;&lt;br /&gt;Customize Internet Explorer&#39;s Title Bar:&lt;br /&gt;Open Registry by going to Start then Run and Enter regedit. Navigate to HKEY_CURRENT_ USER\Software\ Microsoft\ Internet. Explorer\Main. In right hand panel look for string &quot;Window Title&quot; and change its value to whatever custom text you want to see.&lt;br /&gt;&lt;br /&gt;Disabling the use of Win Key:&lt;br /&gt;If your are a gaming freak then you must be sick of the Win key in your keyboard. To disable use of Win key, open registry by going to Start then Run and entering regedit. Navigate to [HKEY_LOCAL_ MACHINE\SYSTEM\ CurrentControlSe t\Control\ Keyboard Layout] . In this look for value of &quot;Scancode Map&quot;. Its binary data so be extra careful:&lt;br /&gt;Set its value to &quot;00 00 00 00 00 00 00 00 03 00 00 00 00 00 5B E0 00 00 5C E0 00 00 00 00&quot; to disable the win key.&lt;br /&gt;&lt;br /&gt;Restarting Windows without Restarting the Computer:&lt;br /&gt;This one is again is. When you cl!ck on the SHUTDOWN button, make sure to simultaneous press SHIFT Button. If you hold the Shift key down while *** on SHUTDOWN button, you computer would restart without restarting the Computer. This is equivalent to term &quot;HOT REBOOT&quot;.&lt;br /&gt;&lt;br /&gt;Stopping XP from displaying unread messages count on Welcome Screen:&lt;br /&gt;To stop XP from displaying count of unread messages, Open registry and navigate to [HKEY_CURRENT_ USER\Software\ Microsoft\ Windows\CurrentV ersion\UnreadMai l] and look for the data key &quot;MessageExpiryDays&quot; . If you do not see this key, create one DWORD key by the name &quot;MessageExpiryDays&quot; . Setting its value to 0 would stop Windows XP from displaying the count of unread messages.&lt;br /&gt;&lt;br /&gt;Modify Color Selection of Default Theme:&lt;br /&gt;Open registry by going to Start then Run. Entering regedit, navigate to [HKEY_USERS\ .DEFAULT\ Software\ Microsoft\ Windows\CurrentV ersion\ThemeMana ger] and locate the key &quot;ColorName&quot;.&lt;br /&gt;Right cl!ck on it and select modify its value from &quot;NormalColor&quot; to &quot;Metallic&quot;&lt;br /&gt;cl!ck Ok, and exit regedit and restart your computer.&lt;br /&gt;&lt;br /&gt;Removing the Recycle Bin from the Desktop:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you don&#39;t use the Recycle Bin to store deleted files , you can get rid of its desktop icon all together. Run Regedit and go to:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;HKEY_LOCAL_MACHINE/ SOFTWARE/ Microsoft/ Windows/CurrentV ersion/explorer/ Desktop/NameSpace&lt;br /&gt;&lt;br /&gt;Windows Xp Registry Tips &amp; Tweaks&lt;br /&gt;&lt;br /&gt;Modifying the Disk Check Autochk.exe Time-out (Scandisk Delay) Value from 10 seconds to 3 Seconds&lt;br /&gt;[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\Session Manager]&lt;br /&gt;&quot;AutoChkTimeOut&quot;=dword:00000003&lt;br /&gt;Disable Automatic Restart in the event of a System Crash / BSOD&lt;br /&gt;[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\CrashControl]&lt;br /&gt;&quot;AutoReboot&quot;=dword:00000000&lt;br /&gt;Disable The Windows XP Desktop Cleanup Wizard (Unused Desktop Shortcuts)&lt;br /&gt;[HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Explorer\Desktop\CleanupWiz]&lt;br /&gt;&quot;NoRun&quot;=dword:00000001&lt;br /&gt;Speed up Network Browsing by Removing Network Scheduled Tasks&lt;br /&gt;[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curr entVersion\Explorer\RemoteComputer\NameSpace\{D627 7990-4C6A-11CF-8D87-00AA0060F5BF}]&lt;br /&gt;Disables Windows Take A Tour Bubble Popup&lt;br /&gt;[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Curr entVersion\Applets\Tour]&lt;br /&gt;&quot;RunCount&quot;=dword:00000000&lt;br /&gt;Disable Remote Registry Service (Remote users to modify registry settings on your computer. Now registry can be modified only by users on your computer)&lt;br /&gt;[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic es\RemoteRegistry]&lt;br /&gt;&quot;Start&quot;=dword:00000004&lt;br /&gt;Removes the Recent Documents from the Start menu. The system saves a shortcut to each of the non-program files the user opened most recently, and it displays the shortcuts on the Recent Documents.&lt;br /&gt;[HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Policies\Explorer]&lt;br /&gt;&quot;NoRecentDocsMenu&quot;=dword:00000001&lt;br /&gt;Classic Search, Full Path In Title Bar And Address Bar. This allows you to disable the new Search Assistant Dog and use the traditional search interface in Windows Explorer&lt;br /&gt;[HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Explorer\CabinetState]&lt;br /&gt;&quot;FullPath&quot;=dword:00000000&lt;br /&gt;&quot;FullPathAddress&quot;=dword:00000001&lt;br /&gt;&quot;Use Search Asst&quot;=&quot;no&quot;&lt;br /&gt;&quot;Settings&quot;=hex:0c,00,02,00,1b,01,e7,77,60,00,0 0,00&lt;br /&gt;Have you ever wanted to Rename Recycle Bin ? This Tweak Allows Renaming of Recycle Bin&lt;br /&gt;[HKEY_CLASSES_ROOT\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}\ShellFolder]&lt;br /&gt;&quot;Attributes&quot;=hex:50,01,00,20&lt;br /&gt;&quot;CallForAttributes&quot;=dword:00000000&lt;br /&gt;Are you getting &#39;Low Disk Space Notification&#39; ? This Disables Low Diskspace Warnings&lt;br /&gt;[HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Policies\Explorer]&lt;br /&gt;&quot;NoLowDiskSpaceChecks&quot;=dword:00000001&lt;br /&gt;Do you want to Speedup the Windows XP Start Menu?&lt;br /&gt;[HKEY_CURRENT_USER\Control Panel\Desktop]&lt;br /&gt;&quot;MenuShowDelay&quot;=&quot;2&quot;&lt;br /&gt;Maximize Your Internet Explorer&#39;s Simultaneous Downloads From 2 to 10 Connections&lt;br /&gt;[HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Internet Settings]&lt;br /&gt;&quot;MaxConnectionsPer1_0Server&quot;=dword:0000000a&lt;br /&gt;&quot;MaxConnectionsPerServer&quot;=dword:0000000a&lt;br /&gt;Remove the Queue-it-up, Burn to CD right cl!ck options on Windows Media Player files.&lt;br /&gt;[-HKEY_CLASSES_ROOT\CLSID\{CE3FB1D1-02AE-4a5f-A6E9-D9F1B4073E6C}]&lt;br /&gt;[-HKEY_CLASSES_ROOT\CLSID\{F1B9284F-E9DC-4e68-9D7E-42362A59F0FD}]&lt;br /&gt;[-HKEY_CLASSES_ROOT\CLSID\{8DD448E6-C188-4aed-AF92-44956194EB1F}]&lt;br /&gt;Removes Sign up with Passport Wizard when trying to sign in MSN Messenger First time&lt;br /&gt;[HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Internet Settings\Passport]&lt;br /&gt;&quot;RegistrationCompleted&quot;=dword:00000001&lt;br /&gt;Disables Preview (Thumbnails) of Movie File Formats (Allowing You To Move/Rename/Delete without Errors)&lt;br /&gt;[-HKEY_CLASSES_ROOT\.avi\ShellEx]&lt;br /&gt;[-HKEY_CLASSES_ROOT\.mpg\ShellEx]&lt;br /&gt;[-HKEY_CLASSES_ROOT\.mpe\ShellEx]&lt;br /&gt;[-HKEY_CLASSES_ROOT\.mpeg\ShellEx]&lt;br /&gt;[-HKEY_CLASSES_ROOT\.mov\ShellEx]&lt;br /&gt;Open Explorer From My Computer or Any Folder (Power users love this)&lt;br /&gt;[HKEY_CLASSES_ROOT\Folder\shell]&lt;br /&gt;@=&quot;explore&quot;&lt;br /&gt;Remove &#39;Shortcut To ...&#39; Prefix when you create new Shortcut&lt;br /&gt;[HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Explorer]&lt;br /&gt;&quot;link&quot;=hex:00,00,00,00&lt;br /&gt;This **** &#39;Command Prompt here&#39; on Right cl!ck Menu (When you right cl!ck on a Drive/Folder)&lt;br /&gt;[HKEY_CLASSES_ROOT\Directory\shell\Command Prompt Here]&lt;br /&gt;@=&quot;Command &amp;Prompt Here&quot;&lt;br /&gt;[HKEY_CLASSES_ROOT\Directory\shell\Command Prompt Here\command]&lt;br /&gt;@=&quot;cmd.exe /k cd %1 &quot;&lt;br /&gt;[HKEY_CLASSES_ROOT\Drive\shell\Command Prompt Here]&lt;br /&gt;@=&quot;Command &amp;Prompt Here&quot;&lt;br /&gt;[HKEY_CLASSES_ROOT\Drive\shell\Command Prompt Here\command]&lt;br /&gt;@=&quot;cmd.exe /k cd %1 &quot;&lt;br /&gt;Remove Shared Documents folders from My Computer System Folder&lt;br /&gt;[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curr entVersion\Explorer\MyComputer\NameSpace\DelegateF olders\{59031a47-3f72-44a7-89c5-5595fe6b30ee}]&lt;br /&gt;Disable the Unread Mail Message on the Welcome Screen&lt;br /&gt;[HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\UnreadMail\]&lt;br /&gt;&quot;MessageExpiryDays&quot;=dword:00000000&lt;br /&gt;Disable Compress Old Files (This is useful when Disk Cleanup Tool Stops Responding While Compressing Old Files)&lt;br /&gt;[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curr entVersion\Explorer\VolumeCaches\Compress old files]&lt;br /&gt;Windows Explorer Crashes When Opening Folder Containing avi/video files&lt;br /&gt;[-HKEY_CLASSES_ROOT\CLSID\{87D62D94-71B3-4b9a-9489-5FE6850DC73E}]&lt;br /&gt;[-HKEY_CLASSES_ROOT\SystemFileAssociations\.avi\shel lex\PropertyHandler]&lt;br /&gt;[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{87D62D9 4-71B3-4b9a-9489-5FE6850DC73E}\InProcServer32]&lt;br /&gt;&lt;br /&gt;================================================== ==============&lt;br /&gt;&lt;br /&gt;Send Out Executable Files Via Gmail&lt;br /&gt;&lt;br /&gt;As a security measure to prevent the intrusion of potential viruses, Gmail strictly disallows users to send and receive executable files (files with the extension &quot;.exe&quot;, &quot;.dll&quot;, &quot;.ocx&quot; or &quot;.bat&quot;) in its policy. If you try to send these files, Gmail will send you an error message: &quot;This is an executable file. For security reasons, Gmail does not allow you to send this type of file.&quot; You might try to zip or compress the files into other formats such as &quot;.zip&quot;, &quot;.tar&quot;, &quot;.tgz&quot;, &quot;.taz&quot;, &quot;.z&quot; or &quot;.gz&quot;. However, your Gmail account will bounce back your message. How to send executable files with your Gmail account if you really need to do so?&lt;br /&gt;&lt;br /&gt;Of course the easiest way is to use other email services such as Yahoo to send your important executable files. However, if you are still set on using Gmail to send your executable files, there are a few ways you can try: -&lt;br /&gt;&lt;br /&gt;1. You can rename your executable files from the &quot;exe&quot; extension to other formats such as &quot;doc&quot;, &quot;jpeg&quot;, etc. For instance, your file name is happy.exe; just rename your file to happy.doc and send it over to the receivers. Once the receivers have received the files, they just need to change the extension back to the original file extension.&lt;br /&gt;&lt;br /&gt;2. The other way you can try is upload your executable files to some free file hosting service such as DivShare or Rapidshare. Copy down the link and send it to the receivers. It&#39;s pretty straightforward.&lt;br /&gt;&lt;br /&gt;3. The last option you can try is to compress your executable file by using Winrar. Gmails doesn&#39;t scan files in the RAR format. You can send the file out without a problem. However, you must make sure your receivers can open the RAR files</content><link rel='replies' type='application/atom+xml' href='http://czta.blogspot.com/feeds/3973585999820563829/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://czta.blogspot.com/2009/01/unknown-xp-secrets.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7834066955195879585/posts/default/3973585999820563829'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7834066955195879585/posts/default/3973585999820563829'/><link rel='alternate' type='text/html' href='http://czta.blogspot.com/2009/01/unknown-xp-secrets.html' title='Unknown XP Secrets'/><author><name>onand_bach</name><uri>http://www.blogger.com/profile/03231516849840408640</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjnRKLSps3YpXr--QyUw6i6EgkzaVbp_84FS9Jp23CERWfKR2mS3veSw6YGo-9ZavHkoBOabPqH1deYLuE7iXWpWSyr2l6EHcbbuOUO2Sb_oFDsIoGb1PQHoshNbTBDYg/s220/kadaj1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7834066955195879585.post-1100875956051639775</id><published>2009-01-09T20:55:00.000+07:00</published><updated>2009-01-09T21:44:29.556+07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="routing"/><title type='text'>routing</title><content type='html'>Routing Basics&lt;br /&gt;&lt;br /&gt;This chapter introduces the underlying concepts widely used in routing protocols. Topics summarized here include routing protocol components and algorithms. In addition, the role of routing protocols is briefly contrasted with the role of routed or network protocols. Subsequent chapters in Part VII, &quot;Routing Protocols,&quot; address specific routing protocols in more detail, while the network protocols that use routing protocols are discussed in Part VI, &quot;Network Protocols.&quot;&lt;br /&gt;What Is Routing?&lt;br /&gt;&lt;br /&gt;Routing is the act of moving information across an internetwork from a source to a destination. Along the way, at least one intermediate node typically is encountered. Routing is often contrasted with bridging, which might seem to accomplish precisely the same thing to the casual observer. The primary difference between the two is that bridging occurs at Layer 2 (the link layer) of the OSI reference model, whereas routing occurs at Layer 3 (the network layer). This distinction provides routing and bridging with different information to use in the process of moving information from source to destination, so the two functions accomplish their tasks in different ways.&lt;br /&gt;&lt;br /&gt;The topic of routing has been covered in computer science literature for more than two decades, but routing achieved commercial popularity as late as the mid-1980s. The primary reason for this time lag is that networks in the 1970s were simple, homogeneous environments. Only relatively recently has large-scale internetworking become popular.&lt;br /&gt;Routing Components&lt;br /&gt;&lt;br /&gt;Routing involves two basic activities: determining optimal routing paths and transporting information groups (typically called packets) through an internetwork. In the context of the routing process, the latter of these is referred to as packet switching. Although packet switching is relatively straightforward, path determination can be very complex.&lt;br /&gt;Path Determination&lt;br /&gt;&lt;br /&gt;Routing protocols use metrics to evaluate what path will be the best for a packet to travel. A metric is a standard of measurement, such as path bandwidth, that is used by routing algorithms to determine the optimal path to a destination. To aid the process of path determination, routing algorithms initialize and maintain routing tables, which contain route information. Route information varies depending on the routing algorithm used.&lt;br /&gt;&lt;br /&gt;Routing algorithms fill routing tables with a variety of information. Destination/next hop associations tell a router that a particular destination can be reached optimally by sending the packet to a particular router representing the &quot;next hop&quot; on the way to the final destination. When a router receives an incoming packet, it checks the destination address and attempts to associate this address with a next hop. Figure 5-1 depicts a sample destination/next hop routing table.&lt;br /&gt;&lt;br /&gt;Figure 5-1 Destination/Next Hop Associations Determine the Data&#39;s Optimal Path&lt;br /&gt;&lt;br /&gt;Routing tables also can contain other information, such as data about the desirability of a path. Routers compare metrics to determine optimal routes, and these metrics differ depending on the design of the routing algorithm used. A variety of common metrics will be introduced and described later in this chapter.&lt;br /&gt;&lt;br /&gt;Routers communicate with one another and maintain their routing tables through the transmission of a variety of messages. The routing update message is one such message that generally consists of all or a portion of a routing table. By analyzing routing updates from all other routers, a router can build a detailed picture of network topology. A link-state advertisement, another example of a message sent between routers, informs other routers of the state of the sender&#39;s links. Link information also can be used to build a complete picture of network topology to enable routers to determine optimal routes to network destinations.&lt;br /&gt;Switching&lt;br /&gt;&lt;br /&gt;Switching algorithms is relatively simple; it is the same for most routing protocols. In most cases, a host determines that it must send a packet to another host. Having acquired a router&#39;s address by some means, the source host sends a packet addressed specifically to&lt;br /&gt;a router&#39;s physical (Media Access Control [MAC]-layer) address, this time with the protocol (network layer) address of the destination host.&lt;br /&gt;&lt;br /&gt;As it examines the packet&#39;s destination protocol address, the router determines that it either knows or does not know how to forward the packet to the next hop. If the router does not know how to forward the packet, it typically drops the packet. If the router knows how to forward the packet, however, it changes the destination physical address to that of the next hop and transmits the packet.&lt;br /&gt;&lt;br /&gt;The next hop may be the ultimate destination host. If not, the next hop is usually another router, which executes the same switching decision process. As the packet moves through the internetwork, its physical address changes, but its protocol address remains constant, as illustrated in Figure 5-2.&lt;br /&gt;&lt;br /&gt;The preceding discussion describes switching between a source and a destination end system. The International Organization for Standardization (ISO) has developed a hierarchical terminology that is useful in describing this process. Using this terminology, network devices without the capability to forward packets between subnetworks are called end systems (ESs), whereas network devices with these capabilities are called intermediate systems (ISs). ISs are further divided into those that can communicate within routing domains (intradomain ISs) and those that communicate both within and between routing domains (interdomain ISs). A routing domain generally is considered a portion of an internetwork under common administrative authority that is regulated by a particular set of administrative guidelines. Routing domains are also called autonomous systems. With certain protocols, routing domains can be divided into routing areas, but intradomain routing protocols are still used for switching both within and between areas.&lt;br /&gt;&lt;br /&gt;Figure 5-2 Numerous Routers May Come into Play During the Switching Process&lt;br /&gt;&lt;br /&gt;Routing Algorithms&lt;br /&gt;&lt;br /&gt;Routing algorithms can be differentiated based on several key characteristics. First, the particular goals of the algorithm designer affect the operation of the resulting routing protocol. Second, various types of routing algorithms exist, and each algorithm has a different impact on network and router resources. Finally, routing algorithms use a variety of metrics that affect calculation of optimal routes. The following sections analyze these routing algorithm attributes.&lt;br /&gt;Design Goals&lt;br /&gt;&lt;br /&gt;Routing algorithms often have one or more of the following design goals:&lt;br /&gt;&lt;br /&gt;•Optimality&lt;br /&gt;&lt;br /&gt;•Simplicity and low overhead&lt;br /&gt;&lt;br /&gt;•Robustness and stability&lt;br /&gt;&lt;br /&gt;•Rapid convergence&lt;br /&gt;&lt;br /&gt;•Flexibility&lt;br /&gt;&lt;br /&gt;Optimality refers to the capability of the routing algorithm to select the best route, which depends on the metrics and metric weightings used to make the calculation. For example, one routing algorithm may use a number of hops and delays, but it may weigh delay more heavily in the calculation. Naturally, routing protocols must define their metric calculation algorithms strictly.&lt;br /&gt;&lt;br /&gt;Routing algorithms also are designed to be as simple as possible. In other words, the routing algorithm must offer its functionality efficiently, with a minimum of software and utilization overhead. Efficiency is particularly important when the software implementing the routing algorithm must run on a computer with limited physical resources.&lt;br /&gt;&lt;br /&gt;Routing algorithms must be robust, which means that they should perform correctly in&lt;br /&gt;the face of unusual or unforeseen circumstances, such as hardware failures, high load conditions, and incorrect implementations. Because routers are located at network junction points, they can cause considerable problems when they fail. The best routing algorithms are often those that have withstood the test of time and that have proven stable under a variety of network conditions.&lt;br /&gt;&lt;br /&gt;In addition, routing algorithms must converge rapidly. Convergence is the process of agreement, by all routers, on optimal routes. When a network event causes routes to either go down or become available, routers distribute routing update messages that permeate networks, stimulating recalculation of optimal routes and eventually causing all routers to agree on these routes. Routing algorithms that converge slowly can cause routing loops or network outages.&lt;br /&gt;&lt;br /&gt;In the routing loop displayed in Figure 5-3, a packet arrives at Router 1 at time t1. Router 1 already has been updated and thus knows that the optimal route to the destination calls for Router 2 to be the next stop. Router 1 therefore forwards the packet to Router 2, but because this router has not yet been updated, it believes that the optimal next hop is Router 1. Router 2 therefore forwards the packet back to Router 1, and the packet continues to bounce back and forth between the two routers until Router 2 receives its routing update or until the packet has been switched the maximum number of times allowed.&lt;br /&gt;&lt;br /&gt;Figure 5-3 Slow Convergence and Routing Loops Can Hinder Progress&lt;br /&gt;&lt;br /&gt;Routing algorithms should also be flexible, which means that they should quickly and accurately adapt to a variety of network circumstances. Assume, for example, that a network segment has gone down. As many routing algorithms become aware of the problem, they will quickly select the next-best path for all routes normally using that segment. Routing algorithms can be programmed to adapt to changes in network bandwidth, router queue size, and network delay, among other variables.&lt;br /&gt;Algorithm Types&lt;br /&gt;&lt;br /&gt;Routing algorithms can be classified by type. Key differentiators include these:&lt;br /&gt;&lt;br /&gt;•Static versus dynamic&lt;br /&gt;&lt;br /&gt;•Single-path versus multipath&lt;br /&gt;&lt;br /&gt;•Flat versus hierarchical&lt;br /&gt;&lt;br /&gt;•Host-intelligent versus router-intelligent&lt;br /&gt;&lt;br /&gt;•Intradomain versus interdomain&lt;br /&gt;&lt;br /&gt;•Link-state versus distance vector&lt;br /&gt;Static Versus Dynamic&lt;br /&gt;&lt;br /&gt;Static routing algorithms are hardly algorithms at all, but are table mappings established by the network administrator before the beginning of routing. These mappings do not change unless the network administrator alters them. Algorithms that use static routes are simple to design and work well in environments where network traffic is relatively predictable and where network design is relatively simple.&lt;br /&gt;&lt;br /&gt;Because static routing systems cannot react to network changes, they generally are considered unsuitable for today&#39;s large, constantly changing networks. Most of the dominant routing algorithms today are dynamic routing algorithms, which adjust to changing network circumstances by analyzing incoming routing update messages. If the message indicates that a network change has occurred, the routing software recalculates routes and sends out new routing update messages. These messages permeate the network, stimulating routers to rerun their algorithms and change their routing tables accordingly.&lt;br /&gt;&lt;br /&gt;Dynamic routing algorithms can be supplemented with static routes where appropriate. A router of last resort (a router to which all unroutable packets are sent), for example, can be designated to act as a repository for all unroutable packets, ensuring that all messages are at least handled in some way.&lt;br /&gt;Single-Path Versus Multipath&lt;br /&gt;&lt;br /&gt;Some sophisticated routing protocols support multiple paths to the same destination. Unlike single-path algorithms, these multipath algorithms permit traffic multiplexing over multiple lines. The advantages of multipath algorithms are obvious: They can provide substantially better throughput and reliability. This is generally called load sharing.&lt;br /&gt;Flat Versus Hierarchical&lt;br /&gt;&lt;br /&gt;Some routing algorithms operate in a flat space, while others use routing hierarchies. In a flat routing system, the routers are peers of all others. In a hierarchical routing system, some routers form what amounts to a routing backbone. Packets from nonbackbone routers travel to the backbone routers, where they are sent through the backbone until they reach the general area of the destination. At this point, they travel from the last backbone router through one or more nonbackbone routers to the final destination.&lt;br /&gt;&lt;br /&gt;Routing systems often designate logical groups of nodes, called domains, autonomous systems, or areas. In hierarchical systems, some routers in a domain can communicate with routers in other domains, while others can communicate only with routers within their domain. In very large networks, additional hierarchical levels may exist, with routers at the highest hierarchical level forming the routing backbone.&lt;br /&gt;&lt;br /&gt;The primary advantage of hierarchical routing is that it mimics the organization of most companies and therefore supports their traffic patterns well. Most network communication occurs within small company groups (domains). Because intradomain routers need to know only about other routers within their domain, their routing algorithms can be simplified, and, depending on the routing algorithm being used, routing update traffic can be reduced accordingly.&lt;br /&gt;Host-Intelligent Versus Router-Intelligent&lt;br /&gt;&lt;br /&gt;Some routing algorithms assume that the source end node will determine the entire route. This is usually referred to as source routing. In source-routing systems, routers merely act as store-and-forward devices, mindlessly sending the packet to the next stop.&lt;br /&gt;&lt;br /&gt;Other algorithms assume that hosts know nothing about routes. In these algorithms, routers determine the path through the internetwork based on their own calculations. In the first system, the hosts have the routing intelligence. In the latter system, routers have the routing intelligence.&lt;br /&gt;Intradomain Versus Interdomain&lt;br /&gt;&lt;br /&gt;Some routing algorithms work only within domains; others work within and between domains. The nature of these two algorithm types is different. It stands to reason, therefore, that an optimal intradomain-routing algorithm would not necessarily be an optimal interdomain-routing algorithm.&lt;br /&gt;Link-State Versus Distance Vector&lt;br /&gt;&lt;br /&gt;Link-state algorithms (also known as shortest path first algorithms) flood routing information to all nodes in the internetwork. Each router, however, sends only the portion of the routing table that describes the state of its own links. In link-state algorithms, each router builds a picture of the entire network in its routing tables. Distance vector algorithms (also known as Bellman-Ford algorithms) call for each router to send all or some portion of its routing table, but only to its neighbors. In essence, link-state algorithms send small updates everywhere, while distance vector algorithms send larger updates only to neighboring routers. Distance vector algorithms know only about their neighbors.&lt;br /&gt;&lt;br /&gt;Because they converge more quickly, link-state algorithms are somewhat less prone to routing loops than distance vector algorithms. On the other hand, link-state algorithms require more CPU power and memory than distance vector algorithms. Link-state algorithms, therefore, can be more expensive to implement and support. Link-state protocols are generally more scalable than distance vector protocols.&lt;br /&gt;Routing Metrics&lt;br /&gt;&lt;br /&gt;Routing tables contain information used by switching software to select the best route. But how, specifically, are routing tables built? What is the specific nature of the information that they contain? How do routing algorithms determine that one route is preferable to others?&lt;br /&gt;&lt;br /&gt;Routing algorithms have used many different metrics to determine the best route. Sophisticated routing algorithms can base route selection on multiple metrics, combining them in a single (hybrid) metric. All the following metrics have been used:&lt;br /&gt;&lt;br /&gt;•Path length&lt;br /&gt;&lt;br /&gt;•Reliability&lt;br /&gt;&lt;br /&gt;•Delay&lt;br /&gt;&lt;br /&gt;•Bandwidth&lt;br /&gt;&lt;br /&gt;•Load&lt;br /&gt;&lt;br /&gt;•Communication cost&lt;br /&gt;&lt;br /&gt;Path length is the most common routing metric. Some routing protocols allow network administrators to assign arbitrary costs to each network link. In this case, path length is the sum of the costs associated with each link traversed. Other routing protocols define hop count, a metric that specifies the number of passes through internetworking products, such as routers, that a packet must take en route from a source to a destination.&lt;br /&gt;&lt;br /&gt;Reliability, in the context of routing algorithms, refers to the dependability (usually described in terms of the bit-error rate) of each network link. Some network links might go down more often than others. After a network fails, certain network links might be repaired more easily or more quickly than other links. Any reliability factors can be taken into account in the assignment of the reliability ratings, which are arbitrary numeric values usually assigned to network links by network administrators.&lt;br /&gt;&lt;br /&gt;Routing delay refers to the length of time required to move a packet from source to destination through the internetwork. Delay depends on many factors, including the bandwidth of intermediate network links, the port queues at each router along the way, network congestion on all intermediate network links, and the physical distance to be traveled. Because delay is a conglomeration of several important variables, it is a common and useful metric.&lt;br /&gt;&lt;br /&gt;Bandwidth refers to the available traffic capacity of a link. All other things being equal, a 10-Mbps Ethernet link would be preferable to a 64-kbps leased line. Although bandwidth is a rating of the maximum attainable throughput on a link, routes through links with greater bandwidth do not necessarily provide better routes than routes through slower links. For example, if a faster link is busier, the actual time required to send a packet to the destination could be greater.&lt;br /&gt;&lt;br /&gt;Load refers to the degree to which a network resource, such as a router, is busy. Load can be calculated in a variety of ways, including CPU utilization and packets processed per second. Monitoring these parameters on a continual basis can be resource-intensive itself.&lt;br /&gt;&lt;br /&gt;Communication cost is another important metric, especially because some companies may not care about performance as much as they care about operating expenditures. Although line delay may be longer, they will send packets over their own lines rather than through the public lines that cost money for usage time.&lt;br /&gt;Network Protocols&lt;br /&gt;&lt;br /&gt;Routed protocols are transported by routing protocols across an internetwork. In general, routed protocols in this context also are referred to as network protocols. These network protocols perform a variety of functions required for communication between user applications in source and destination devices, and these functions can differ widely among protocol suites. Network protocols occur at the upper five layers of the OSI reference model: the network layer, the transport layer, the session layer, the presentation layer, and the application layer.&lt;br /&gt;&lt;br /&gt;Confusion about the terms routed protocol and routing protocol is common. Routed protocols are protocols that are routed over an internetwork. Examples of such protocols are the Internet Protocol (IP), DECnet, AppleTalk, Novell NetWare, OSI, Banyan VINES, and Xerox Network System (XNS). Routing protocols, on the other hand, are protocols that implement routing algorithms. Put simply, routing protocols are used by intermediate systems to build tables used in determining path selection of routed protocols. Examples of these protocols include Interior Gateway Routing Protocol (IGRP), Enhanced Interior Gateway Routing Protocol (Enhanced IGRP), Open Shortest Path First (OSPF), Exterior Gateway Protocol (EGP), Border Gateway Protocol (BGP), Intermediate System-to-Intermediate System (IS-IS), and Routing Information Protocol (RIP). Routed and routing protocols are discussed in detail later in this book. </content><link rel='replies' type='application/atom+xml' href='http://czta.blogspot.com/feeds/1100875956051639775/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://czta.blogspot.com/2009/01/routing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7834066955195879585/posts/default/1100875956051639775'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7834066955195879585/posts/default/1100875956051639775'/><link rel='alternate' type='text/html' href='http://czta.blogspot.com/2009/01/routing.html' title='routing'/><author><name>onand_bach</name><uri>http://www.blogger.com/profile/03231516849840408640</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjnRKLSps3YpXr--QyUw6i6EgkzaVbp_84FS9Jp23CERWfKR2mS3veSw6YGo-9ZavHkoBOabPqH1deYLuE7iXWpWSyr2l6EHcbbuOUO2Sb_oFDsIoGb1PQHoshNbTBDYg/s220/kadaj1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7834066955195879585.post-5395863833467976169</id><published>2009-01-09T20:52:00.000+07:00</published><updated>2009-01-09T20:54:21.114+07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Aticle Privacy Statement"/><title type='text'>Aticle Privacy Statement </title><content type='html'>Aticle Privacy Statement &lt;br /&gt;What follows is the Privacy Statement for all aticle websites (a.k.a. blogs) including all the websites run under the http://article-tkj.blogspot.com domain.&lt;br /&gt;Please read this statement regarding our blogs. If you have questions please ask us via our contact form.&lt;br /&gt;Email Addresses&lt;br /&gt;You may choose to add your email address to our contact list via the forms on our websites. We agree that we will never share you email with any third party and that we will remove your email at your request. We don’t currently send advertising via email, but in the future our email may contain advertisements and we may send dedicated email messages from our advertisers without revealing your email addresses to them. If you have any problem removing your email address please contact us via our contact form.&lt;br /&gt;Ownership of Information&lt;br /&gt;Article is the sole owner of any information collected on our websites.&lt;br /&gt;Comments/Message Boards&lt;br /&gt;Most Aticle ontain comment sections (a.k.a. message boards). We do not actively monitor these comments and the information on them is for entertainment purposes only. If we are alerted to something we deem inappropriate in any way, we may delete it at our discretion. We use email validation on most of our message boards in order to reduce “comment spam.” These email addresses will not be shared with any third party.&lt;br /&gt;Cookies&lt;br /&gt;Currently we assign cookies to our readers in order to save their preferences. This data is not shared with any third party. Accessing our websites is not dependent on accepting cookies and all major browsers allow you to disable cookies if you wish.&lt;br /&gt;Third Party Cookies&lt;br /&gt;Many of our advertisers use cookies in order to determine the number of times you have seen an advertisement. This is done to limit the number times you are shown the same advertisement. Aticle does not have access to this data.&lt;br /&gt;Traffic Reports&lt;br /&gt;Our industry-standard traffic reporting records IP addresses, Internet service provider information, referrer strings, browser types and the date and time pages are loaded. We use this information in the aggregate only to provide traffic statistics to advertisers and to figure out which features and editorials are most popular.&lt;br /&gt;Legal proceedings&lt;br /&gt;We will make every effort to preserve user privacy but Article may need to disclose information when required by law.&lt;br /&gt;Business Transitions&lt;br /&gt;If Article is acquired by or merges with another firm, the assets of our websites, including personal information, will likely be transferred to the new firm.&lt;br /&gt;Links&lt;br /&gt;Article websites frequently link to other websites. We are not responsible for the content or business practices of these websites. When you leave our websites we encourage you to read the destination site’s privacy policy. This privacy statement applies solely to information collected by Article&lt;br /&gt;Notification of Changes&lt;br /&gt;When Article makes changes to this privacy policy we will post those changes here.&lt;br /&gt;Contact Information&lt;br /&gt;If you have any questions regarding our privacy policy, please contact us.&lt;br /&gt;&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://czta.blogspot.com/feeds/5395863833467976169/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://czta.blogspot.com/2009/01/aticle-privacy-statement.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7834066955195879585/posts/default/5395863833467976169'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7834066955195879585/posts/default/5395863833467976169'/><link rel='alternate' type='text/html' href='http://czta.blogspot.com/2009/01/aticle-privacy-statement.html' title='Aticle Privacy Statement '/><author><name>onand_bach</name><uri>http://www.blogger.com/profile/03231516849840408640</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjnRKLSps3YpXr--QyUw6i6EgkzaVbp_84FS9Jp23CERWfKR2mS3veSw6YGo-9ZavHkoBOabPqH1deYLuE7iXWpWSyr2l6EHcbbuOUO2Sb_oFDsIoGb1PQHoshNbTBDYg/s220/kadaj1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7834066955195879585.post-7238519050875486360</id><published>2009-01-09T20:38:00.000+07:00</published><updated>2009-01-09T20:44:21.177+07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="VBScript open folder"/><title type='text'>VBScript open folder</title><content type='html'>&#39;==========================================================================&lt;br /&gt;&#39;&lt;br /&gt;&#39; VBScript:  BrowseFolderSUB.vbs&lt;br /&gt;&#39;Author: Kenneth Værsland  &lt;br /&gt;&#39;Date 10/12/2008&lt;br /&gt;&#39; NAME: BrowseFolderSUB.vbs&lt;br /&gt;&#39;==========================================================================&lt;br /&gt;subGetFolder&lt;br /&gt;Sub subGetFolder&lt;br /&gt;Dim objShell, objFOlder, objFolderItem, objPath&lt;br /&gt;Const windowHandle = 0&lt;br /&gt;Const folderOnly = 0&lt;br /&gt;const folderAndFiles = &amp;H4000&amp;&lt;br /&gt;Set objShell = CreateObject(&quot;Shell.Application&quot;)      &lt;br /&gt;Set objFOlder = objShell.BrowseForFolder(windowHandle, _&lt;br /&gt;&quot;Select a folder:&quot;, folderOnly)       &lt;br /&gt;Set objFolderItem = objFolder.Self   &lt;br /&gt;objPath = objFolderItem.Path&lt;br /&gt;End Sub&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&#39;========================================================================== &lt;br /&gt;&#39;Author: Kenneth Værsland&lt;br /&gt;&#39;Date 10/12/2008&lt;br /&gt;&#39; Name: BrowseFolderListFiles.vbs&lt;br /&gt;&#39;==========================================================================&lt;br /&gt;Option Explicit &lt;br /&gt;On Error Resume Next&lt;br /&gt;Dim FolderPath  &#39;Path to the folder to be searched for files&lt;br /&gt;Dim objFSO   &#39;The fileSystemObject&lt;br /&gt;Dim objFolder  &#39;The folder object&lt;br /&gt;Dim colFiles  &#39;Collection of files from files method&lt;br /&gt;Dim objFile   &#39;individual file object&lt;br /&gt;Dim strOUT    &#39;Single output variable&lt;br /&gt;subCheckWscript &#39;Ensures script is running under wscript&lt;br /&gt;subGetFolder  &#39;Calls the browseForFOlder method&lt;br /&gt;Set objFSO = CreateObject(&quot;Scripting.FileSystemObject&quot;)&lt;br /&gt;Set objFolder = objFSO.GetFolder(FolderPath)&lt;br /&gt;Set colFiles = objFolder.Files&lt;br /&gt;For Each objFile in colFiles&lt;br /&gt; strOUT = strOUT &amp; objFile.Name &amp; vbTab &amp; objFile.Size _&lt;br /&gt; &amp; &quot; bytes&quot; &amp; VbCrLf&lt;br /&gt;Next&lt;br /&gt;WScript.Echo strOUT&lt;br /&gt;&lt;br /&gt;&#39; ****** subs below ******&lt;br /&gt;Sub subCheckWscript&lt;br /&gt;If UCase(Right(WScript.FullName, 11)) = &quot;CSCRIPT.EXE&quot; Then&lt;br /&gt;  WScript.Echo &quot;This script must be run under WScript.&quot;&lt;br /&gt;  WScript.Quit&lt;br /&gt;End If&lt;br /&gt;End Sub&lt;br /&gt;Sub subGetFolder&lt;br /&gt;Dim objShell, objFOlder, objFolderItem&lt;br /&gt;Const windowHandle = 0&lt;br /&gt;Const folderOnly = 0&lt;br /&gt;const folderAndFiles = &amp;H4000&amp;&lt;br /&gt;Set objShell = CreateObject(&quot;Shell.Application&quot;)      &lt;br /&gt;Set objFolder = objShell.BrowseForFolder(windowHandle, _&lt;br /&gt;&quot;Select a folder:&quot;, folderOnly)       &lt;br /&gt;Set objFolderItem = objFolder.Self   &lt;br /&gt;FolderPath = objFolderItem.Path&lt;br /&gt;End Sub&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://czta.blogspot.com/feeds/7238519050875486360/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://czta.blogspot.com/2009/01/vbscript-open-folder.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7834066955195879585/posts/default/7238519050875486360'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7834066955195879585/posts/default/7238519050875486360'/><link rel='alternate' type='text/html' href='http://czta.blogspot.com/2009/01/vbscript-open-folder.html' title='VBScript open folder'/><author><name>onand_bach</name><uri>http://www.blogger.com/profile/03231516849840408640</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjnRKLSps3YpXr--QyUw6i6EgkzaVbp_84FS9Jp23CERWfKR2mS3veSw6YGo-9ZavHkoBOabPqH1deYLuE7iXWpWSyr2l6EHcbbuOUO2Sb_oFDsIoGb1PQHoshNbTBDYg/s220/kadaj1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7834066955195879585.post-2185712410878461528</id><published>2009-01-09T20:18:00.000+07:00</published><updated>2009-01-09T20:31:23.434+07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="VBScript"/><title type='text'>VBScript</title><content type='html'>VBScript&lt;br /&gt;&lt;br /&gt;VBScript (short for Visual Basic Scripting Edition) is an Active Scripting language developed by Microsoft. The language&#39;s syntax reflects its history as a limited variation of Microsoft&#39;s Visual Basic programming language.&lt;br /&gt;VBScript is installed by default in every desktop release of Microsoft Windows since Windows 98,[1] and may or may not be included with Windows CE depending on the configuration and purpose of the device it is running on. It initially gained support from Windows administrators seeking an automation tool more powerful than the batch language first developed in the late 1970s.&lt;br /&gt;A VBScript script must be executed within a host environment, of which there are several provided on a standard install of Microsoft Windows (Windows Script Host, Internet Explorer). Additionally, The VBScript hosting environment is embeddable in other programs, through technologies such as the Microsoft Script control (msscript.ocx).&lt;br /&gt;Contents&lt;br /&gt;[hide]&lt;br /&gt;•	1 History&lt;br /&gt;•	2 Uses&lt;br /&gt;•	3 Functionality&lt;br /&gt;•	4 See also&lt;br /&gt;•	5 References&lt;br /&gt;•	6 External links&lt;br /&gt;&lt;br /&gt;History&lt;br /&gt;VBScript began as part of the Microsoft Windows Script Technologies, which were targeted at web developers initially and were launched in 1996. During a period of just over two years, the VBScript and JScript languages advanced from version 1.0 to 2.0 (the latter was later renamed 5.0) and over that time system administrators noticed it and began using it. In version 5.0, the functionality of VBScript was increased with new features such as regular expressions, classes, the With statement,[2] Eval/Execute/ExecuteGlobal functions to evaluate and execute script commands built during the execution of another script, a function-pointer system via GetRef(), and Distributed COM (DCOM) support.&lt;br /&gt;In 5.5, &quot;Submatches&quot;[3] were added to the regular expression class in VBScript to finally allow VBScript script authors to capture the text within the expression&#39;s groups. That capability before was only possible through the JScript member of the Microsoft ActiveX Scripting family.&lt;br /&gt;As of 2008, no new functionality will be added to the VBScript language, which has been superseded by Windows PowerShell. However, it will continue to be shipped with future releases of Microsoft Windows, as will other components of the ActiveX Scripting Family (such as JScript). Additionally, support will continue due to the amount of code written in it and because it is still considered a useful tool for some tasks.&lt;br /&gt;The language engine is currently being maintained by Microsoft&#39;s Sustaining Engineering Team, which is responsible for bug fixes and security enhancements.&lt;br /&gt;Uses&lt;br /&gt;When employed in Microsoft Internet Explorer, VBScript is similar in function to JavaScript, as a language to write functions that are embedded in or included from HTML pages and interact with the Document Object Model (DOM) of the page, to perform tasks not possible in HTML alone. Other web browsers such as Firefox, and Opera do not have built-in support for VBScript. This means that where client-side script is required on a web site, developers almost always use JavaScript for cross-browser compatibility.&lt;br /&gt;Besides client-side web development, VBScript is used for server-side processing of web pages, most notably with Microsoft Active Server Pages (ASP). The ASP engine and type library, asp.dll, invokes vbscript.dll to run VBScript scripts. VBScript that is embedded in an ASP page is contained within &lt;% and %&gt; context switches. The following example of an ASP page with VBScript displays the current time in 24-hour format (Note that an &#39;=&#39; sign occurring after a context switch (&lt;%) is short-hand for a call to Write() method of the Response object).&lt;br /&gt; &lt;% Option Explicit&lt;br /&gt; %&gt;&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.01 Transitional//EN&quot; &quot;http://www.w3.org/TR/html4/loose.dtd&quot;&gt;&lt;br /&gt; &lt;html&gt;&lt;br /&gt; 	&lt;head&gt;&lt;br /&gt; 		&lt;title&gt;VBScript Example&lt;/title&gt;&lt;br /&gt; 	&lt;/head&gt;&lt;br /&gt; 	&lt;body&gt;&lt;% &lt;br /&gt; 		&#39;Grab current time from Now() function.&lt;br /&gt; 		Dim timeValue&lt;br /&gt; 		timeValue = Now  %&gt;&lt;br /&gt; 		The time, in 24-hour format, is &lt;%=Hour(timeValue)%&gt;:&lt;%=Minute(timeValue)%&gt;:&lt;%=Second(timeValue)%&gt;.&lt;br /&gt; 	&lt;/body&gt;&lt;br /&gt; &lt;/html&gt;&lt;br /&gt;VBScript can also be used to create applications that run directly on a person&#39;s computer running Microsoft Windows. The simplest example of this is a script that makes use of the Windows Script Host (WSH) environment. Such a script is usually in a stand-alone file with the file extension .vbs. The script can be invoked in two ways. Wscript.exe is used to display output and receive input in through a GUI, such as dialog and input boxes. Cscript.exe is used in a command line environment.&lt;br /&gt;VBScript .vbs files can be included in two other types of scripting files: .wsf files, which are styled after XML; and .hta files, which are styled after HTML. .wsf files can be executed using wscript.exe or cscript.exe, just like .vbs files, and .wsf files can include multiple .vbs files. As a result .wsf files provide a means for code reuse: one can write a library of classes or functions in one or more .vbs files, and include those files in one or more .wsf files to use and reuse that functionality in a modular way.&lt;br /&gt;Another employment of VBScript is the HTML Application, or HTA (file extension .hta). In an HTA, HTML is used for the user interface, and a scripting language such as VBScript is used for the program logic. HTAs run inside of mshta.exe, which is a &#39;Trusted Application Environment&#39; provided by Internet Explorer. The &#39;Trusted Application Environment&#39;, implies that HTAs do not suffer the restrictions applied to applications running in the web or intranet zone, such as accessing local files or network paths. Although HTAs run in this &#39;trusted&#39; environment, querying Active Directory can be subject to Internet Explorer Zone logic and associated error messages.&lt;br /&gt;VBScript (and JScript) can be used in a .wsc file to create a Windows Script Component - an ActiveX-enabled script class that can be invoked by other COM-enabled applications.[4]&lt;br /&gt;Lastly, VBScript has been adopted as the internal scripting language for some embedded applications, such as industrial operator interfaces and human machine interfaces.[citation needed]&lt;br /&gt;Functionality&lt;br /&gt;As-is, VBScript provides functions and sub-routines, basic date/time, string manipulation, math, user interaction, error handling, and regular expressions. Additional functionality can be added through the use of ActiveX technologies. File system management, file modification, and streaming text operations can be achieved with the Scripting Runtime Library scrrun.dll. Binary file and memory I/O is provided by the &quot;ADODB.Stream&quot; class, which can also be used as a string builder (since a high amount of VBScript string concatenation is costly due to constant memory re-allocation), and can be used to convert an array of bytes to a string and vice versa. Database access is made possible through ActiveX Data Objects (ADO), and the IIS Metabase can be manipulated using the GetObject() function with sufficient permissions (useful for creating and destroying sites and virtual directories). Additionally, XML files and schemas can be manipulated with the Microsoft XML Library Application Programming Interfaces (msxml6.dll, msxml3.dll), which also can be used to retrieve content from the World Wide Web via the XMLHTTP and ServerXMLHTTP objects (class strings &quot;MSXML2.XMLHTTP.6.0&quot; and &quot;MSXML2.ServerXMLHTTP.6.0&quot;).&lt;br /&gt;See also&lt;br /&gt;•	JScript&lt;br /&gt;•	JavaScript&lt;br /&gt;•	PHP&lt;br /&gt;•	JScript.NET&lt;br /&gt;•	Windows Script File&lt;br /&gt;•	HTML Components&lt;br /&gt;References&lt;br /&gt;1.	&quot;WSH Version Information&quot;. Microsoft (2008). Retrieved on 2008-04-02.&lt;br /&gt;2.	&quot;Visual Basic Scripting Edition:With Statement (VBScript)&quot;. Microsoft (2008). Retrieved on 2008-04-02.&lt;br /&gt;3.	&quot;Visual Basic Scripting Edition: SubMatches Collection&quot;. Microsoft (2008). Retrieved on 2008-04-02.&lt;br /&gt;4.	&quot;Introducing Windows Script Components&quot;. Microsoft (2008). Retrieved on 2008-04-02.&lt;br /&gt;External links&lt;br /&gt;•	VBScript in the Microsoft Developer Network&lt;br /&gt;•	Windows Script 5.6 Documentation&lt;br /&gt;&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://czta.blogspot.com/feeds/2185712410878461528/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://czta.blogspot.com/2009/01/vbscript.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7834066955195879585/posts/default/2185712410878461528'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7834066955195879585/posts/default/2185712410878461528'/><link rel='alternate' type='text/html' href='http://czta.blogspot.com/2009/01/vbscript.html' title='VBScript'/><author><name>onand_bach</name><uri>http://www.blogger.com/profile/03231516849840408640</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjnRKLSps3YpXr--QyUw6i6EgkzaVbp_84FS9Jp23CERWfKR2mS3veSw6YGo-9ZavHkoBOabPqH1deYLuE7iXWpWSyr2l6EHcbbuOUO2Sb_oFDsIoGb1PQHoshNbTBDYg/s220/kadaj1.jpg'/></author><thr:total>0</thr:total></entry></feed>