程式設計修改IE首頁

2021-05-22 00:00:06 字數 3343 閱讀 4315

一直想跟著cogito學安全,昨晚終於下定決心開始。cogito給我出了一道程式設計修改ie首頁的題目,在他的指導下很快完成了,不過對登錄檔還是懵懵懂懂的,所以便找點資料好好補了一課。

首先,登錄檔中的資料是通過一種樹狀結構以根鍵和子鍵的形式組成的。放在這些鍵中的各種引數控制著windows的啟動、硬體驅動程式的裝載以及一些windows應用程式的執行。

自己分別在windows 7、vista和xp系統中開啟登錄檔編輯器,發現都有五個根鍵,分別是:hkey_classes_root、hkey_current_user、hkey_local_machine、hkey_users和hkey_current_config。上網查了一下,發現windows 98還有乙個記錄系統執行時刻狀態的hkey_dyn_data總共六個根鍵。這五個根鍵存放的資訊分別是:

hkey_classes_root根鍵記錄了某類檔案和開啟該類檔案的應用程式之間的相互關聯關係。

hkey_current_user根鍵包含了當前登入使用者的配置檔案資訊。

hkey_local_machine根鍵包含了當前計算機的配置資料,包括所安裝的硬體以及軟體的設定。這些性新為所有的使用者登入系統服務。

hkey_users根鍵包括預設使用者的資訊和所有以前登入使用者的資訊。

hkey_current_config根鍵包含有關本地計算機在系統啟動時使用的硬體配置檔案的資訊。

其中,hkey_local_machine乙個鍵已經存放了hkey_classes_root和hkey_current_config中存放的資訊,hkey_users也存放著hkey_current_user中存放的資訊。

乙個根鍵鍵就是乙個資料夾,而子鍵就是這個資料夾中的子資料夾,子鍵同樣是乙個鍵。乙個值項則是乙個鍵的當前定義,由名稱、資料型別以及分配的值組成。乙個鍵可以有乙個或多個值,每個值的名稱各不相同,如果乙個值的名稱為空,則該值為該鍵的預設值。

鍵的資料型別主要有以下四種:

reg_sz

字串文字字串

reg_multi_sz

多字串

含有多個文字值的字串

reg_binary

二進位制數

二進位制值,以十六進製制顯示。

reg_dword 雙字

乙個32位的二進位制值,顯示為8位的十六進製制值。

ok,有了登錄檔的基本概念後,可以動手來程式設計實現修改ie首頁了。關於登錄檔的api函式有二三十個,提供對登錄檔的讀取,寫入,刪除,以及開啟登錄檔及鍵值等操作。修改ie首頁主要涉及開啟鍵、設定鍵值和關閉鍵三個操作,相關的api分別是:

longregcreatekeyex(

hkeyhkey

,

lpcwstrlpsubkey

,

dwordreserved

,

lpwstrlpclass

,

dworddwoptions

,

regsamsamdesired

,

lpsecurity_attributeslpsecurityattributes

,

phkeyphkresult

,

lpdwordlpdwdisposition

);

本函式開啟指定的鍵或子鍵。如果要開啟的鍵不存在的話,則建立它。第乙個引數是根鍵;第二個引數是子鍵;第三個引數設為0;第四個引數設為null;第五個引數為登錄檔鍵選項,可以設定為reg_option_non_volatile或reg_option_volatile;第六個引數設定為0;第七個引數設定為null;第八個引數為乙個控制代碼指標,該控制代碼用regclosekey關閉。該函式呼叫不成功返回非0,成功返回error_success。

longregsetvalueex(
hkeyhkey

,

lpcwstrlpvaluename

,

dwordreserved

,

dworddwtype

,

constbyte*lpdata

,

dwordcbdata

);

本函式設定某子鍵下特定名稱的值。第乙個引數為regcreatekeyex中第八個引數所指的控制代碼,第二個引數為名稱;第三個引數設為0;第四個函式是鍵的型別;第五個函式是指向鍵值的指標;第六個引數是該鍵值的大小。函式呼叫不成功返回非0,成功返回error_success。

longregclosekey(

hkeyhkey

); 本函式關閉指定的主冊表鍵,釋放控制代碼。當對乙個或多個鍵或值操作完成以後,需要關閉其鍵來進行儲存操作結果。關閉乙個鍵後,控制代碼變為非法,以使其不可再次被使用。為系統重新使用而釋放控制代碼。函式呼叫不成功返回非0,成功返回error_success。

修改ie首頁的**如下:

int_tmain(int argc, _tchar* argv)

lpctstr startpage = _t("g.cn");

//修改鍵值

ret = regsetvalueex(hkey,_t("start page"),null,reg_sz,

(byte*)startpage,_tcslen(startpage)*2);

if(ret != error_success)    

//關閉該鍵

regclosekey(hkey); 

return 0; }

修改 Tomcat 預設首頁

2 修改 conf 目錄下的 server.xml 檔案,找到 標籤,然後新增 如下 name localhost unpackwars true autodeploy true documentation at docs config valve.html classname org.apache...

取消IE7預設首頁

相信不少朋友在windows xp 下安裝ie7後都遇到過首次開啟網頁都要開啟微軟 上的乙個預設首頁,碰上網路緩慢時老是打不開,但打不開下次還繼續出現這個網頁,真是有點煩。乙個解決方法是開啟登錄檔編輯器,找到 hkey current user software microsoft internet...

UCHome首頁呼叫修改方法

這裡預設呼叫的是 20 位熱門使用者,呼叫條件為按好友數倒序排序,總共顯示 20 位會員。1 修改顯示數量 說明 有的站剛開始建立,註冊會員和人氣都不是很多,那麼我們可以根據實際情況把這裡的 20 改為 10 修改方法如下 開啟 uchome 根目錄下的 index.php 檔案,找到 複製 如下 ...