How to keep your PC clean & up-to-date


The following step-by-step guide shows how I clean up and update my PC on a regular basis, to keep everything run smooth, fast and nice.
Software used in this guide can be found on this website. Use the Search function on this page to find all.

  • First of all, I prefer to have the My Documents folder point to another partition or drive (D:\ in my case) to keep it seperated from my Windows installation on C:\. In My Documents, I try to sort my files/folders as good as possible:

    - Downloads (Contains all the new, unordered downloaded stuff. This is also my Shared Folder for programs like eMule and it's my default folder for downloads with all kinds of software.)
    - Documents (Contains all my text-documents, spreadsheets, etc.)
    - Drivers (Contains all the latest driver-versions for the hardware in my system.)
    - Firefox (Contains my Mozilla Firefox Profile.)
    - Flash (Contains my funny Flash Movies.)
    - Game-updates (Contains patches for my games.)
    - Homepages (Contains all my temporary, old, new and final versions of the websites I make.)
    - ISO (Contains ISO's of CD's I often use, for use with Daemon Tools. It keeps me from swapping discs all the time.)
    - Intranet (Contains my archived websites, downloaded with HTTrack Website Copier.)
    - Mail (Contains my Mozilla Thunderbird/Outlook Express Mail.)
    - My Backups (Contains all the backups I made with SyncBack or any other backup-program.)
    - My Music (Contains all my MP3-albums.)
    - My Video's (Contains all my temporary and final home video's, some ready and some almost ready for DVD-backup.)
    - My Pictures (Contains all my digital photo-albums.)
    - Nokia (Contains backdrops, ringtones, midlets for my mobile phone.)
    - Software (Contains my freeware collection [A's Absolute Freeware 2005 CD-ROM.)
    - Upload (This folder is use in my home network, and as uploadfolder on my FTP-server, so others can copy files to my system.)
  • If I have a new version of a program already installed on my system, I install SyncBack to easily make backups of the stuff I want to use later in the My Backups folder, like (1) configuration files, (2) savegames, (3) etc.
  • I pay a visit to WindowsUpdate to look for the latest updates for Windows.
  • I install MyUninstaller, run it, and remove (1) all the software I don't want to use anymore, (2) all the software for which I have a better alternative and (3) the software for which I have a new version (I don't like installing new over old software. I like to start from scratch whenever possible).
  • I install CCleaner (Crap Cleaner) and run it to remove all the crap from my PC.
  • I restart my PC and remove all the empty, half-empty and left-behind files/folders related to the software I've just removed. I do this by checking the following folders: (1) \Program Files, (2) \Documents & Settings\Username\Application Data, (3) the Desktop and all other locations I often use.
  • I install JV PowerTools and check the registry for keys related to software that I have uninstalled. I remove those keys. After that I run the Registry Cleaner from the Tools menu and search for all the keys that are save to remove, without the ignored items. When the program is done searching I select them all (CTRL-A) and remove them. Then I run the Registry Cleaner again and search for all the ignored items, and I review them one by one to decide which of those are safe to remove.
  • Then I update my Anti-Virus and Anti-Spyware data files.
  • Now I restart my PC again in Safe Mode and run the Anti-Spyware and Anti-Virus software to be sure my system's clean of that kind of crap.
  • Still in Safe Mode, I run a Defragmentation on all local drives. I use DIRMS to defrag my system. After that I keepBuzzsaw running every time I start Windows to defragment the drives on-the-fly.
  • After this I restart Windows back in Normal Mode and then I'm ready to install new and/or updated software. If needed I restore the configuration files, savegames, etc. to the appropriate folder using SyncBack.
  • I disable System Restore on all drives, and use ERUNT to make my registry backups instead.
  • I install Sysinternals PageDefrag to defrag my registry at boot.

Now just see how smooth everything's running... ;)

posted @ 2006-07-01 00:28 django 阅读(872) | 评论 (0)编辑 收藏
 
一开始装过,不过不知道干嘛的,然后就删掉了。后来在csdn的一篇什么05年100大科技创新的产品里面居然看到这个插件,又给装上了。发觉真的很不错。
说简单点,它就是一个人工筛选网页的冬冬,你可以申请帐号,然后选自己感兴趣的category,然后在插件里面就会出现你选的category,点一个category,就会跳到经网友筛选后的该category的一个网页,点"Stumble"又会跳到下一个。同时,自己也可以把喜欢的网页推荐上去。
基本上跳转到的网页都是很不错的网页。比如说我用过的几个category,"shareware", "open source", "Java", "online games", "Self improment"等等,都可以跳到很多以前没去过的好网站。对于喜欢上网逛,发现好玩的东西的人来说,真的是个很好的工具。
不过有一点,好像Stumble几次,跳转的网页就会重复。
posted @ 2006-06-26 20:58 django 阅读(476) | 评论 (0)编辑 收藏
 
QuickRex提供了两个eclipse视图,一个可以输入正则表达式和text进行匹配,另外一个是正则表达式的文档。可以选择java.util.regex或者oro来作为parse的engin,也可以选择parse的参数,对于匹配的text,有高亮显示,也可以显示group出来的值。的确是学习和使用正则表达式的好工具。
它的主页好像一直上不去,不过这儿可以下载,exe文件,直接安装就可以了。
posted @ 2006-06-26 20:40 django 阅读(800) | 评论 (0)编辑 收藏
 
可以在eclipse的package或者navigator视图下,右键点击文件或文件夹,打开windowns explore对应的目录。

easy explore
posted @ 2006-06-25 18:56 django 阅读(614) | 评论 (0)编辑 收藏
 
RUNit
使用很方便,在桌面右键,就可以选快捷方式了。
 文件,文件夹,什么都可以打开。还有group功能。
posted @ 2006-06-24 00:38 django 阅读(446) | 评论 (1)编辑 收藏
 
被测试的类: Buffer.java

package test;

import java.util.HashMap;
import java.util.Map;


/**
 *
 * @author sting
 */
public class Buffer {
    private static Buffer me = new Buffer();
   
    public static Buffer getInstance() {
        return me;
    }
   
    private Map<String, Integer> buff;
   
    private Buffer() {
        this.buff = new HashMap<String, Integer>();
    }
   
    public void put(String key, int value) {
            if (!(this.buff.containsKey(key))) {
                this.buff.put(key, value);
        }
    }
   
    public int get(String key) {
            if (this.buff.containsKey(key)) {
                return this.buff.get(key);
            }
            return 0;
    }
}


TestCase: BufferTest.java
package test;

import net.sourceforge.groboutils.junit.v1.MultiThreadedTestRunner;
import net.sourceforge.groboutils.junit.v1.TestRunnable;
import junit.framework.TestCase;


/**
 *
 * @author sting
 */
public class BufferTest extends TestCase {
    private Buffer buff;
   
    protected void setUp() throws Exception {
        super.setUp();
        buff = Buffer.getInstance();
    }

    protected void tearDown() throws Exception {
        super.tearDown();
    }

    public void test() throws Throwable {
        TestRunnable[] runnables = new TestRunnable[] {
                new WriteToBuffer(buff, 10),
                new GetFromBuffer(buff, 10)
        };
       
        MultiThreadedTestRunner testRunner =
                new MultiThreadedTestRunner(runnables);
        testRunner.runTestRunnables();
    }
   
    private static class WriteToBuffer extends TestRunnable {
        private int value;
        private Buffer buff;
       
        public WriteToBuffer(Buffer buff, int value) {
            this.buff = buff;
            this.value = value;
        }
       
        @Override
        public void runTest() throws Throwable {
            buff.put("sting", value);
        }
    }
   
    private static class GetFromBuffer extends TestRunnable {
        private int value;
        private Buffer buff;
       
        public GetFromBuffer(Buffer buff, int value) {
            this.buff = buff;
            this.value = value;
        }
       
        @Override
        public void runTest() throws Throwable {
            assertEquals(value, buff.get("sting"));
        }
    }
}


运行该test case,结果如下:
WARN [Thread-1] (MultiThreadedTestRunner.java:276) - A test thread caused an exception.
junit.framework.AssertionFailedError: expected:<10> but was:<0>
    at junit.framework.Assert.fail(Assert.java:47)
    at junit.framework.Assert.failNotEquals(Assert.java:282)
    at junit.framework.Assert.assertEquals(Assert.java:64)
    at junit.framework.Assert.assertEquals(Assert.java:201)
    at junit.framework.Assert.assertEquals(Assert.java:207)
    at test.BufferTest$GetFromBuffer.runTest(BufferTest.java:75)
    at net.sourceforge.groboutils.junit.v1.TestRunnable.run(TestRunnable.java:154)
    at java.lang.Thread.run(Unknown Source)

把Buffer.java加上同步处理:
public class Buffer {
    private static Buffer me = new Buffer();
   
    public static Buffer getInstance() {
        return me;
    }
   
    private Map<String, Integer> buff;
   
    private Buffer() {
        this.buff = new HashMap<String, Integer>();
    }
   
    public void put(String key, int value) {
        synchronized (this) {
            if (!(this.buff.containsKey(key))) {
                this.buff.put(key, value);
            }
        }
    }
   
    public int get(String key) {
        synchronized (this) {
            if (this.buff.containsKey(key)) {
                return this.buff.get(key);
            }
            return 0;
        }
    }
}

测试通过。

这里只是用最简单的code演示了一下如何使用GroboUtils里面提供
TestRunnable和MultiThreadedTestRunner来编写多线程的测试代码。其实也可以自己写code去测试,不过已经有人写了,不用再重复去做了。Please refer to http://broboutils.sourceforge.net to get more information.
posted @ 2006-06-24 00:27 django 阅读(1726) | 评论 (0)编辑 收藏
仅列出标题
共12页: First 上一页 4 5 6 7 8 9 10 11 12