查看積分策略說明發表回覆
Discuz! 代碼
提示插入
直接插入
說明訊息

插入粗體文本 插入斜體文本 插入下劃線 置中對齊 插入超級連結 插入信件位址 插入圖像 插入 flash 插入代碼 插入引言 插入列表
刪除線 直線分隔線 虛線分隔線
    
添加文字底框
內容 [字數檢查]:

表情符號

更多 Smilies
字型大小 |||
溫馨提示:本區開放遊客瀏覽。


文章關鍵字 : [功能說明]
(關鍵字可加強搜索準確性, 如關鍵字多於一組, 請以 , 作分隔, e.g. : 阿笨,shiuh,第一笨)

 關閉 URL 識別 | html 禁用
 關閉 表情符號 | 表情符號 可用
 關閉 Discuz! 代碼 | Discuz! 代碼 可用
使用個人簽名
接收新回覆信件通知
推薦放檔網絡空間

檔案(Torent, zip等)
  1. freedl
  2. multiupload
  3. btghost
  4. 便當狗
  5. mediafire
  6. pillowangel
圖片(JPG, GIF等)
  1. hotimg
  2. tinypic
  3. mousems2
  4. imageshack
  5. imm.io
>>>歡迎推薦好用空間


最新10篇文章回顧
rainwen

 發表於 2005-4-3 05:13 AM


引用:
桂正和寫到:

引用:
Acute寫到:
3. Windows 2000 有設定registry size 的畫面? 麻煩貼出來瞧一瞧, 我還真沒見過該畫面哩
Acute.


個人認為
我想他說的是記憶體分頁的東西
系統裡面怎麼看都只有這東西有設定大小..

至於重開機才能使登錄檔生效..
如果我沒記錯的話
軟體只要有需要
就會自己跑去找登錄檔
這是很基本的流程邏輯吧.......
看的不知所以然
感覺似是而非

Windows 2000 在系統內容中真的有registry size 的設定,
不過基本上很少有人會用到登錄檔大於預設值.....更何況還可以調高

而且在XP跟2003上就沒看到這項設定了


另外從98開始,Windows每次開機成功後就會自動備份一份登錄檔,以供將來損毀時還原用


ultraplayer

 發表於 2005-3-30 01:16 PM

不過重灌XP後,那程式就不行用了,要重装也是蠻麻煩的


swimman

 發表於 2005-3-26 11:36 PM

看大家都對REGISTRY這麼有興趣
我再深入介紹一下registry的相關知識

這些都是從Inside windows 2000 3rd (microsoft press)中摘錄出來

1.Registry 在哪裡

HKEY_LOCAL_MACHINE\SYSTEM         c:\Winnt\System32\Config\System
HKEY_LOCAL_MACHINE\SAM              c:\Winnt\System32\Config\Sam
HKEY_LOCAL_MACHINE\SECURITY      c:\Winnt\System32\Config\Security
HKEY_LOCAL_MACHINE\SOFTWARE     c:\Winnt\System32\Config\Software
當然winnt名稱也可能會是windows這個不一定
在哪底下應該會看到一些有幾百K到幾十M的檔案

2.Registry的結構
這個跟資料結構有關還是直接去看這本書吧

3.安全性考量

以SYSTEM為例

To further protect the integrity of the crucial SYSTEM hive, the configuration manager maintains a mirror of the
                                                                                                                                             ^^^^^^^^
SYSTEM hive on disk. If you look at the nonhidden files in your \Winnt\System32\Config directory, you'll see three
^^^^^^^^^所以的確是有備份                                                ^^^^^^^^^^^^^^^^放在這裡  
files with the base name System : System, System.alt, and System.sav. System.alt is the alternate hive .
                                                   ^^^^^^^^^^^^^^^^^^^^^^^ 總共有三個實體兩個備份                                                      
Whenever a hive sync flushes dirty sectors to the SYSTEM hive, the hive sync also updates the System.alt hive. If
修改的時候都會一起備份
the configuration manager detects that the SYSTEM hive is corrupt when the system boots, the configuration
如果正式的壞了
manager attempts to load the hive's alternate. If that hive is usable, it then uses that alternate to update the original
會嘗試載入備份
SYSTEM hive.
備份如果成功載入就會覆寫到正式的
System.sav is a copy of the SYSTEM hive that exists when Windows 2000 finishes installing. This copy can be used,
System.sav是視窗安裝完成後儲存的版本
usually only in extreme circumstances, to restore the computer's configuration to its initial state.
如果REGISTRY嚴重損壞的時候就會載入這個最古早的版本


桂正和

 發表於 2005-3-26 08:22 AM


引用:
Acute寫到:
3. Windows 2000 有設定registry size 的畫面? 麻煩貼出來瞧一瞧, 我還真沒見過該畫面哩
Acute.


個人認為
我想他說的是記憶體分頁的東西
系統裡面怎麼看都只有這東西有設定大小..

至於重開機才能使登錄檔生效..
如果我沒記錯的話
軟體只要有需要
就會自己跑去找登錄檔
這是很基本的流程邏輯吧.......
看的不知所以然
感覺似是而非


jocosn

 發表於 2005-3-26 04:06 AM


引用:
swimman寫到:
.net程式如果只使用LOCAL元件就可以直接拷貝執行,那種稱為xcopy安裝
如果有使用元件是放在GAC那就不行了
....(略)


對阿,不想用 registry 的人用 Java
Java 的程式都沒有登入檔


swimman

 發表於 2005-3-26 03:32 AM


引用:
jocosn寫到:
毒王寫的比較有道理吧,
乍看一些東西REGISTRY只讀取一次還以為自己孤陋寡聞
感覺怎麼出個網路追追追

不過這些都不是問題
因為 .NET 的新程式允許你不用加任何的 REGISTRY
你可以設計一個純.NET程式,直接灌好後,再把該目錄下的程式直接拷貝到另一台電腦直接執行

所以大家要學就學 C#,VB.NET,VC++.NET
有 .NET 就對了 ........

我也沒試過,不知道對不對

.net程式如果只使用LOCAL元件就可以直接拷貝執行,那種稱為xcopy安裝
如果有使用元件是放在GAC那就不行了
當然如果都沒有使用.net FrameWork之外元件那當然就直接複製就可以了
不過當然要灌.net FrameWork才會動
另外建議大家要學就從C#開始
用C++那叫自找麻煩
vb.net會簡單一點但是薪水會少一些


swimman

 發表於 2005-3-26 03:23 AM

承蒙版主關心我就多說點吧:icons8:icons8
一般寫程式會用到的registry大概就是在HKEY_LOCAL_MACHINE\Software\CompanyName\SoftwareName
或是HKEY_CURRENT_USER\Software\CompanyName\SoftwareName
另外在安裝COM元件的時候還要寫到HKEY_CLASSES_ROOT
不過這個東西幾乎都是開發工具來HANDLE
基本上公司如果肯花錢買個InstallShield X 把程式包一包他就會幫你做好安裝移除的工作,這部分的REGISTRY也不用擔心
回到主題所以移除程式REGISTRY出問題頂多是移不掉,無法重新安裝,這個軟體沒得用
不會把電腦搞到不能運作
另外提到現在程式開發已經走向.net的時代
.net已經把Registry踢進垃圾桶了,.net的設定都改用XML來做設定了
由於.net的高生產力特性而且微軟目前宣稱用80%的精力推廣
所以可以預期的大部分的REGISTRY都會消失
而且在DLL HELL的折磨之下很多人開始朝綠色軟體的方向發展
但是想要在WINDOWS上看不到registry......短時間是很難的


jocosn

 發表於 2005-3-26 03:17 AM

毒王寫的比較有道理吧,
乍看一些東西REGISTRY只讀取一次還以為自己孤陋寡聞
感覺怎麼出個網路追追追

不過這些都不是問題
因為 .NET 的新程式允許你不用加任何的 REGISTRY
你可以設計一個純.NET程式,直接灌好後,再把該目錄下的程式直接拷貝到另一台電腦直接執行

所以大家要學就學 C#,VB.NET,VC++.NET
有 .NET 就對了 ........

我也沒試過,不知道對不對


ELong

 發表於 2005-3-26 02:40 AM

最喜歡看這種沒有人身攻擊,
各憑自己的專業知識,
冷靜以對的討論與分析,
宛若八仙過海,
各顯神通。

沒事沒事,
不要理我,
妳們繼續,妳們繼續.....


Acute

 發表於 2005-3-25 11:05 PM

1. 安裝/解除安裝某些軟體需不需要重開機, 問題跟registry 一點關係都沒有
    問題在於該軟體的模組有沒有能力在系統沒有reboot 的情形下自動卸載
    so, 這並非registry 的問題, 而是該軟體模組的問題

2. registry 是auto backup 的, maybe 在regsitry 裏面有相關的record 可以改變是否backup

3. Windows 2000 有設定registry size 的畫面? 麻煩貼出來瞧一瞧, 我還真沒見過該畫面哩

4. 軟體廠商沒有善盡清除registry 的工作, 才會有那些所謂cleaner 程式, 這跟registry 架構本來就沒關係, 不可以本末倒置, 就好像沒有人無聊寫病毒, 自然不需要掃毒程式, 而不是沒有掃毒程式不行.

5. Unix/Linux 很多東西是不能調整的, Windows 的registry 提供調整的契機. Unix/Linux 並沒有像Windows 那麼複雜的OLE 機制, 所以他可以不需要.

6. 我說: registry 是一種資料庫架構, 並非說registry 才是資料庫, 請看懂中文的意思 @_@

7. INI 最大問題就是散落一地, 所以registry 才提供整合的作法, 所有程式透過統一的界面機制運作, 這樣子管理上才是方便的. 而且OLE 複雜的叫用界面也是利用registry 當作溝通橋樑, 如果是散落一地的INI, 根本不可能可以做到.

Acute.


本主題回覆較多,請 點擊這裡 檢閱。



所在時區為 GMT+8, 現在時間是 2024-5-2 09:23 AM
清除 Cookies - 連絡我們 - TWed2k © 2001-2046 - 純文字版 - 說明
Discuz! 0.1 | Processed in 0.020889 second(s), 7 queries , Qzip disabled