天天看點

程式随系統啟動

Windows啟動時通常會有一大堆程式自動啟動。不要以為管好了“開始→程式→啟動”菜單就萬事大吉,實際上,在Windows XP/2K中,讓Windows自動啟動程式的辦法很多。下文告訴你最重要的兩個檔案夾和八個注冊鍵。

    一、目前使用者專有的啟動檔案夾     

這是許多應用軟體自動啟動的常用位置,Windows自動啟動放入該檔案夾的所有快捷方式。使用者啟動檔案夾一般在:/Documents   and   Settings/<使用者名字>/「開始」菜單/程式/啟動,其中“<使用者名字>”是目前登入的使用者帳戶名稱。    

    二、對所有使用者有效的啟動檔案夾     

這是尋找自動啟動程式的第二個重要位置,不管使用者用什麼身份登入系統,放入該檔案夾的快捷方式總是自動啟動——這是它與使用者專有的啟動檔案夾的差別所在。該檔案夾一般在:/Documents   and   Settings/All   Users/「開始」菜單/程式/啟動。    

    三、Load注冊鍵     

介紹該注冊鍵的資料不多,實際上它也能夠自動啟動程式。位置:HKEY_CURRENT_USER/Software/Microsoft/WindowsNT/CurrentVersion/Windows/load。    

    四、Userinit注冊鍵     

位置:HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/WindowsNT/CurrentVersion/Winlogon/Userinit。這裡也能夠使系統啟動時自動初始化程式。通常該注冊鍵下面有一個userinit.exe,如圖一,但這個鍵允許指定用逗号分隔的多個程式,例如“userinit.exe,OSA.exe”(不含引号)。    

  五、Explorer/Run注冊鍵     

和load、Userinit不同,Explorer/Run鍵在HKEY_CURRENT_USER和HKEY_LOCAL_MACHINE下都有,具體位置是:HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Policies/Explorer/Run,和HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Policies/Explorer/Run。    

    六、RunServicesOnce注冊鍵     

RunServicesOnce注冊鍵用來啟動服務程式,啟動時間在使用者登入之前,而且先于其他通過注冊鍵啟動的程式。RunServicesOnce注冊鍵的位置是:HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/RunServicesOnce,和HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/RunServicesOnce。    

    七、RunServices注冊鍵     

RunServices注冊鍵指定的程式緊接RunServicesOnce指定的程式之後運作,但兩者都在使用者登入之前。RunServices的位置是:HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/RunServices,和HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/RunServices。    

    八、RunOnce/Setup注冊鍵     

RunOnce/Setup指定了使用者登入之後運作的程式,它的位置是:HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/RunOnce/Setup,和HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnce/Setup。    

    九、RunOnce注冊鍵     

安裝程式通常用RunOnce鍵自動運作程式,它的位置在HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnce和HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/RunOnce。HKEY_LOCAL_MACHINE下面的RunOnce鍵會在使用者登入之後立即運作程式,運作時機在其他Run鍵指定的程式之前。HKEY_CURRENT_USER下面的RunOnce鍵在作業系統處理其他Run鍵以及“啟動”檔案夾的内容之後運作。如果是XP,你還需要檢查一下HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnceEx。    

    十、Run注冊鍵     

Run是自動運作程式最常用的注冊鍵,位置在:HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Run,和HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Run。HKEY_CURRENT_USER下面的Run鍵緊接HKEY_LOCAL_MACHINE下面的Run鍵運作,但兩者都在處理“啟動”檔案夾之前。    

  十一、   

在系統資料庫清除鍵值為[HKEY_CURRENT_USER/SOFTWARE/MICROSOFT/WINDOWS/CURRENTVERSION/EXPLORER/TRAYNOTIFY]下的IconStreams和PastIconsStream(一個是記錄自定義通知的,一個是記錄過去項目的删除後按F5重新整理儲存   

然後在程序管理器裡“程序”裡強行中止系統核心“Explorer.exe”并點選“檔案”-》“建立任務”-》重新家載“Explorer.exe”即可,開機後可以發現自定義通知幹淨了~保護了個人隐私~  

附:

BOOL   SetAutoRun(CString   strPath)//開機自動運作   
  {   
        CString   str;   
        HKEY   hRegKey;   
        BOOL   bResult;   
        str=_T("Software//Microsoft//Windows//CurrentVersion//Run");   
        if(RegOpenKey(HKEY_LOCAL_MACHINE,   str,   &hRegKey)   !=   ERROR_SUCCESS)     
                bResult=FALSE;   
        else   
        {   
                _splitpath(strPath.GetBuffer(0),NULL,NULL,str.GetBufferSetLength(MAX_PATH+1),NULL);   
                strPath.ReleaseBuffer();   
                str.ReleaseBuffer();   
                if(::RegSetValueEx(   hRegKey,   
                                                        str,   
                                                        0,   
                                                        REG_SZ,   
                                                        (CONST   BYTE   *)strPath.GetBuffer(0),   
                                                        strPath.GetLength()   )   !=   ERROR_SUCCESS)   
                      bResult=FALSE;   
                else   
                      bResult=TRUE;   
                strPath.ReleaseBuffer();   
        }   
        return   bResult;   
  }   
    
其中strPath參數表示要設定為自運作的程式的絕對路徑。當設定成功時傳回true,否則傳回false。
           

繼續閱讀