freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

優(yōu)秀畢業(yè)設(shè)計-自動修改注冊表論文-內(nèi)附vc詳細(xì)源碼及注釋-資料下載頁

2024-11-29 10:31本頁面

【導(dǎo)讀】早期的圖形操作系統(tǒng),如中,對軟硬件工作環(huán)境的配置是通。備或應(yīng)用程序都得有自己的INI文件,并且在網(wǎng)絡(luò)上難以實(shí)現(xiàn)遠(yuǎn)程訪問。的數(shù)據(jù)庫來統(tǒng)一進(jìn)行管理,將各種信息資源集中起來并存儲各種配置信息。注冊表能夠?qū)τ布?、系統(tǒng)的配置參數(shù)、各應(yīng)用程序和各設(shè)備的驅(qū)動程序進(jìn)行跟蹤。配置,使得修改某些設(shè)置后不再重新啟動成為可能。在注冊表中登錄的硬件某些數(shù)據(jù)可以支持高版本W(wǎng)indows即插即用的特性。外,還可以避免新設(shè)備與原有設(shè)備間的資源沖突。系統(tǒng)管理員和普通用戶可以通過注冊表編輯器在網(wǎng)絡(luò)上檢查系統(tǒng)的設(shè)置,使得遠(yuǎn)。配置并滿足各種特定的需求。的大小是個挑戰(zhàn),同時也在增加系統(tǒng)配置文件的管理難度。對于這種情況,各應(yīng)用廠家。閃失,后果將是十分的嚴(yán)重。通過注冊表調(diào)整軟件的運(yùn)行性能。Java完全取消了指針,C#極大地限制。因此,使用C++進(jìn)行圖像處理編程具有更。鑒于以上原因,本設(shè)計使用Microsoft. 模板處填寫響應(yīng)用戶操作的代碼,這是一種比較完善的可視化編程方法。

  

【正文】 61: 函數(shù)名稱 原形 返回值 解釋 chr(0) LPDWORD lpReserved, //保留,為0 LPDWORD lpType, // 返回所讀取的數(shù)據(jù)類型 LPBYTE lpData, // 返回所讀取的數(shù)據(jù) LPDWORD lpcbData // 返回所讀取的數(shù)據(jù)長度 ); RegDeleteValue() LONG RegDeleteValue( HKEY hKey, // 要刪除的鍵的句柄 LPCTSTR lpValueName // 要刪除的名稱 )。 不成功返回非 0,成功返回 ERROR_SUCCESS 刪除某 Key 的某一名稱 RegEnumKey()和RegEnumKeyEx() LONG RegEnumKeyEx( HKEY hKey, // 要列舉的鍵的句柄 DWORD dwIndex, // 索引 LPTSTR lpName, // 子鍵的名稱 LPDWORD lpcbName, // 子鍵名稱的長度 LPDWORD lpReserved, // 保留 LPTSTR lpClass, // 字符串緩沖地址 LPDWORD lpcbClass, // 緩沖地址大小 PFILETIME lpftLastWriteTime // 最后寫入關(guān)鍵字大小 )。 不成功返回非 0,成功返回 ERROR_SUCCESS 返回注冊表鍵及其子鍵的詳細(xì)信息 30 續(xù)表 61: 函數(shù)名稱 原形 返回值 解釋 RegQueryInfoKey() LONG RegQueryInfoKey( HKEY hKey, // 已打開的鍵的句柄 LPTSTR lpClass, // 類型名稱,僅使用于 NT 若不使用則傳入 Null LPDWORD lpcbClass, // 類型名稱的長度 LPDWORD lpReserved, // 保留 LPDWORD lpcSubKeys, // 返回子鍵的數(shù)目 LPDWORD lpcbMaxSubKeyLen, // 返回最長的子鍵長度 LPDWORD lpcbMaxClassLen, // 返回最長的類長度 LPDWORD lpcValues, // 返回值的數(shù)目 LPDWORD lpcbMaxValueNameLen, // 返回最長的值項(xiàng)名稱的長度 LPDWORD lpcbMaxValueLen, // 返回最長的值的長度 LPDWORD lpcbSecurityDescriptor, //返回安全描述,僅適用于 NT PFILETIME lpftLastWriteTime // 返回鍵最后被寫入的時間,僅適用于 NT )。 不成功返回非 0,成功返回 ERROR_SUCCESS 返回注冊表鍵的信息,包括類名、子鍵數(shù)量、最長子鍵名、值的數(shù)量、最長值數(shù)據(jù)、安全描述符的長度以及上一次寫入的時間等 31 續(xù)表 61: 函數(shù)名稱 原形 返回值 解釋 RegLoadKey() LONG RegLoadKey( HKEY hKey, // 打開的句柄 LPCTSTR lpSubKey, //子鍵的路徑 LPCTSTR lpFile //要寫入注冊表信息的文件 )。 不成功 返回非 0,成功返回 ERROR_SUCCESS 從指定的文件恢復(fù)注冊表鍵的子鍵信息到注冊表 RegReplaceKey() LONG RegReplaceKey( HKEY hKey, // 獲得打開鍵句柄 LPCTSTR lpSubKey, //獲得子鍵名 LPCTSTR lpNewFile, // 在替換前生成新的備份文件 LPCTSTR lpOldFile // 需要覆蓋上注冊表的文件 )。 不成功返回非 0,成功返回 ERROR_SUCCESS 從指定的文件恢復(fù)注冊表鍵 的子鍵信息到注冊表并替換原有的值,并生成新的備份文件 RegSaveKey() LONG RegSaveKey(HKEY hKey, // 要保存的句柄 LPCTSTR lpFile, // 保存子鍵的文件 LPSECURITY_ATTRIBUTES lpSecurityAttributes //不太懂 )。 不成功返回非 0,成功返回 ERROR_SUCCESS 保存鍵及其子鍵信息到指定的文件 軟件設(shè)計的功能模塊 登錄界面模塊 1) 模塊簡介 該模塊是用戶修改注 冊表前所建立的一個登錄界面,界面直觀,易操作。用戶通過它可以進(jìn)入下一個界面。 2) 實(shí)現(xiàn)步驟 ? 打開 VC++環(huán)境界面,在菜單欄中選擇【文件】選項(xiàng),然后,單擊【新建】,彈出如下圖 61 的界面。 32 圖 61 選擇應(yīng)用環(huán)境 ? 選中 MFC AppWizard[exe]后,在【工程名稱】中輸入 muliang,然后點(diǎn)擊【確定】,進(jìn)入下一個界面,如圖 62 所示,選中基本對話框按鈕,點(diǎn)擊完成即可。 圖 62 應(yīng)用程序想到 —步驟 1 ? 在右面的框體內(nèi),見圖 63 所示,畫出所需的控件( 如圖 64 所示),其中修改注冊表和取消按鈕的屬性分別為: IDOK 和 IDCANCEL,按 Ctrl+W 進(jìn)入 Class Wizard 界面,設(shè)置成員變量,選中 Member Variable,雙擊 Control ID 下的 IDOK,添加成員變量 m_bOk,變量類型 CButton,同理,為 IDCANCEL 添加成員變量 m_nCancel。然后,為這兩個按鈕添加事件,在 Message Maps 下的 Objects IDs,選擇 IDOK,雙擊 33 BN_CLICKED,然后,確定編輯代碼。在 void CMuliangDlg::OnOK()下添加如下代碼: thisShowWindow(false)。 CNAME dlg。 ()。 CDialog::OnOK()。 圖 63 Dialog框體 圖 64 設(shè)計的框體 同理,為 IDCANCEL 添加事件,在 void CMuliangDlg::OnCancel()下添加如下代碼: thisCloseWindow()。 CDialog::OnCancel()。 為了彈出修改計算機(jī)名稱框體的對話框,必須 添加該框體的一個類,在 Class Wizard中,右邊選擇 Add Class,建立一個 CNAME 類,然后在 include “:”的頭文件下加入 include ””的頭文件。在 Resource 下,為 CNAME 類建立一個新的對話框,以便顯示修改計算機(jī)名稱的具體內(nèi)容。 修改計算機(jī)名稱界面 1) 模塊簡介 34 該模塊用于修改計算機(jī)名稱,尤其是在計算機(jī)機(jī)房中,有一些計算機(jī)的名稱是相同的,可以通過該模塊進(jìn)行修改。首先,在注冊表中找到一條修改計算機(jī)名稱的關(guān)鍵路徑,即“ SYSTEM\CurrentControlSet\Services\Tcpip\Parameters”;根據(jù)這個思路進(jìn)行編寫代碼。如下圖 65 所示,單擊查詢按鈕時,計算機(jī)名稱文本框內(nèi)顯示本機(jī)的計算機(jī)名稱,并且在信息存儲位置文本框內(nèi)顯示該信息的注冊表的位置。單擊修改按鈕,可以將本機(jī)的計算機(jī)名稱進(jìn)行修改,然后,點(diǎn)擊應(yīng)用按鈕,名稱修改成功,最后,重啟計算機(jī)即可。圖中的退出按鈕,它是為了判斷用戶是否繼續(xù)對注冊表進(jìn)行修改,因此,單擊它時會彈出一個信息提示對話框,以便讓用戶進(jìn)行選擇。如圖 65 所示。 圖 65 設(shè) 計修改計算機(jī)名稱框體 2) 實(shí)現(xiàn)步驟 在 Resource 中,新建一個對話框,如圖 4 所示。設(shè)置個個部分的屬性值。顯示計算機(jī)名稱的文本框?qū)傩詾?IDC_COMPUTERNAME,顯示注冊表路徑的文本框?qū)傩詾镮DC_LOCATION,然后,為它們添加成員變量。按 Ctrl+W 打開 Class Wizard 界面,選中Member Variable ,雙擊 Control ID 下 IDC_COMPUTERNAME ,添 加成 員變量m_nComputername,同理,為 IDC_LOCATION 添加成員變量 m_nLocation,然后 ,點(diǎn)擊確定即可。添加按鈕屬性,查詢按鈕屬性為 IDC_QUERY,修改按鈕屬性為 IDC_MODIFY,應(yīng)用按鈕屬性為 IDC_APPLICATION,退出按鈕屬性為 IDCANCEL,然后,為它們分別添加成員變量,按 Ctrl+W 打開 Class Wizard 界面,選中 Member Variable,雙擊 Control ID下的 IDC_QUERY,添加成員變量 m_nquery,同理,分別 為 IDC_MODIFY 、IDC_APPLICATION 添加成員變量 m_nmodify、 m_napplication。然后,為個個按鈕 添加事件響應(yīng),先打開 Class Wizard,選中 Message Maps 下的 Objects IDs,在其中選擇IDC_QUERY,雙擊 BN_CLICKED,然后,單擊 Edit Code 進(jìn)入如下代碼段,在里面加入如下代碼: void CNAME::OnQuery() 35 { (FALSE)。 //應(yīng)用按鈕無效 (FALSE)。 //修改按鈕無效 GetDlgItem(IDC_COMPUTERNAME)EnableWindow(FALSE)。 //計算機(jī)名框不可用 HKEY hKEY。 //存儲注冊表鍵句柄 HKEY hSubKEY。 //存儲注冊表鍵句柄 BYTE SubKey[50]。 //存儲子鍵名稱 BYTE NVHostname[50]。 //存儲計算機(jī)名名稱 DWORD readSize。 //鍵值大小 DWORD readType=REG_SZ。 //鍵值類型 DWORD index。 //檢索序號 DWORD longth=50。 FILETIME lastWriteTime。 LPCTSTR data_Set=SYSTEM\\CURRENTCONTROLSET\\SERVICES\\TCPIP\\。 //子鍵目錄 if(RegOpenKeyEx(HKEY_LOCAL_MACHINE,data_Set,0,KEY_ALL_ACCESS,amp。hKEY)!=ERROR_SUCCESS) { MessageBox(錯誤:無法打開有關(guān)注冊表鍵 !)。 return。 } index=0。 //賦初值 while(RegEnumKeyEx(hKEY,index++,(LPSTR)SubKey,amp。longth,NULL,NULL,NULL,amp。lastWriteTime)!=ERROR_NO_MORE_ITEMS) { longth=50。 readSize=50。 if(RegOpenKeyEx(hKEY,(LPSTR)SubKey,0,KEY_READ,amp。hSubKEY)!=ERROR_SUCCESS) { 36 MessageBox(錯誤:無法打開有關(guān)注冊表鍵 !)。 return。 } if(RegQueryValueEx(hSubKEY,NV Hostname,NULL,amp。readType,NVHostname,amp。readSize)==ERROR_SUCCESS) { (%s,NVHostname)。 (%s%s,data_Set,SubKey)。 //顯示信息 UpdateData(FALSE)。 RegCloseKey(hKEY)。 RegCloseKey(hSubKEY)。 (TRUE)。 //修改按鈕生效 (FALSE)。 //查詢
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1