全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1733
推到 Plurk!
推到 Facebook!

如何寫入注冊表(64位元)

答題得分者是:carstyc
blue
中階會員


發表:113
回覆:99
積分:52
註冊:2002-04-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2011-11-14 15:36:46 IP:122.146.xxx.xxx 訂閱
Hi,各位先進大家好:
小弟想在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\Namespace\中增加一機碼,
因OS為Win7 64位元,
會自動寫到HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\Namespace\中
該如何解決?
謝謝!
rick060
高階會員


發表:2
回覆:112
積分:217
註冊:2009-11-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2011-11-14 16:59:13 IP:60.250.xxx.xxx 未訂閱
blue
中階會員


發表:113
回覆:99
積分:52
註冊:2002-04-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2011-11-15 08:17:18 IP:219.81.xxx.xxx 訂閱
Hi,感謝Rick060大大的指導,
小弟只是很單純的要在Explorer中增加一個Virtual namespace extension,
雖然小弟的作法可能不太適當,
不過,這應該算是Bug吧,
既然拆出了WOW64,
為何寫進到這裡的卻是沒有作用?
不知道先進有沒有更適當的作法?
謝謝!

===================引 用 rick060 文 章===================
要不要先了解為何有 WOW64
http://en.wikipedia.org/wiki/WoW64

再來想你想要的修改方式適不適當?
carstyc
資深會員


發表:16
回覆:254
積分:329
註冊:2003-07-18

發送簡訊給我
#4 引用回覆 回覆 發表時間:2011-11-15 22:32:52 IP:219.84.xxx.xxx 訂閱
應該是你的 AP 程式是 32位元的 , 所以執行寫入註冊表會寫在 32位元的註冊表

若要寫入64位元的註冊表,你的程式必需compiler 成64位元的程式才可以。




===================引 用 blue 文 章===================
Hi,各位先進大家好:
小弟想在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\Namespace\中增加一機碼,
因OS為Win7 64位元,
會自動寫到HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\Namespace\中
該如何解決?
謝謝!
P.D.
版主


發表:571
回覆:3880
積分:3666
註冊:2006-10-31

發送簡訊給我
#5 引用回覆 回覆 發表時間:2011-11-24 02:33:20 IP:118.169.xxx.xxx 未訂閱
沒看到這篇, 其實之前我為了x64與x86要寫入到software 也是碰得灰頭土臉, 最後看了非常多文獻才發現
就算你想把資料寫入到 sotware中, 但ap為32bit, 其實系統還是會到 wow6432node中搜尋,
我們是可以強制寫入到software中, 但因為x64的問題, MS系統遇到32bit AP(在64bit下), 不會去存取system32,
而對wow6432node 來說, ,可以這麼說, 它是一個虛擬的註冊表, 但又是實實在在存在的東西, 任何32bit的系統,
都會由software中重新指向到 wow6432node 中, 來避開真實64bit的ap所存取的位置
所以其實 software = software\wow6432node
system32 = syswow64
因此只要是32bit的系統, 還是得到wow5432node中才會被正式的存取
===================引 用 blue 文 章===================
Hi,各位先進大家好:
小弟想在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\Namespace\中增加一機碼,
因OS為Win7 64位元,
會自動寫到HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\Namespace\中
該如何解決?
謝謝!
blue
中階會員


發表:113
回覆:99
積分:52
註冊:2002-04-15

發送簡訊給我
#6 引用回覆 回覆 發表時間:2011-11-24 07:55:37 IP:122.146.xxx.xxx 訂閱
Hi,感謝版主的回覆:
理論上寫入到software\wow6432node應該要=寫入到software
不過依小弟的狀況卻是沒有被呈現出來,
小弟希望做的是在檔案總管中增加一個Virtual folder,
使用程式寫入到software/wow6432node中的相對位置,沒有在檔案總管上呈現,
使用寫入到software中的相對位置才有呈現出來,
才會在此詢求解答,
謝謝!

===================引 用 P.D. 文 章===================
沒看到這篇, 其實之前我為了x64與x86要寫入到software 也是碰得灰頭土臉, 最後看了非常多文獻才發現
就算你想把資料寫入到 sotware中, 但ap為32bit, 其實系統還是會到 wow6432node中搜尋,
我們是可以強制寫入到software中, 但因為x64的問題, MS系統遇到32bit AP(在64bit下), 不會去存取system32,
而對wow6432node 來說, ,可以這麼說, 它是一個虛擬的註冊表, 但又是實實在在存在的東西, 任何32bit的系統,
都會由software中重新指向到 wow6432node 中, 來避開真實64bit的ap所存取的位置
所以其實 software = software\wow6432node
system32 = syswow64
因此只要是32bit的系統, 還是得到wow5432node中才會被正式的存取
===================引 用 blue 文 章===================
Hi,各位先進大家好:
小弟想在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\Namespace\中增加一機碼,
因OS為Win7 64位元,
會自動寫到HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\Namespace\中
該如何解決?
謝謝!
carstyc
資深會員


發表:16
回覆:254
積分:329
註冊:2003-07-18

發送簡訊給我
#7 引用回覆 回覆 發表時間:2011-11-24 08:56:00 IP:203.79.xxx.xxx 訂閱
你說的沒錯....寫入到software\wow6432node應該要=寫入到software

但你寫入的是 32位元的環境....你預期出現的 Virtual folder ....

它會出現在 32位元的檔案總管....不會出現在 64位元的檔案總管

恰巧你的OS是64位元的....所以我猜你的檔案總管也是64位元的....

你若想要在 64位元的檔案總管出現預期的 folder....最快的方式還是把你的 AP 變成 64位元的...

然後去寫入註冊表....應該就ok了....


===================引 用 blue 文 章===================
Hi,感謝版主的回覆:
理論上寫入到software\wow6432node應該要=寫入到software
不過依小弟的狀況卻是沒有被呈現出來,
小弟希望做的是在檔案總管中增加一個Virtual folder,
使用程式寫入到software/wow6432node中的相對位置,沒有在檔案總管上呈現,
使用寫入到software中的相對位置才有呈現出來,
才會在此詢求解答,
謝謝!

===================引 用 P.D. 文 章===================
沒看到這篇, 其實之前我為了x64與x86要寫入到software 也是碰得灰頭土臉, 最後看了非常多文獻才發現
就算你想把資料寫入到 sotware中, 但ap為32bit, 其實系統還是會到 wow6432node中搜尋,
我們是可以強制寫入到software中, 但因為x64的問題, MS系統遇到32bit AP(在64bit下), 不會去存取system32,
而對wow6432node 來說, ,可以這麼說, 它是一個虛擬的註冊表, 但又是實實在在存在的東西, 任何32bit的系統,
都會由software中重新指向到 wow6432node 中, 來避開真實64bit的ap所存取的位置
所以其實 software = software\wow6432node
system32 = syswow64
因此只要是32bit的系統, 還是得到wow5432node中才會被正式的存取
===================引 用 blue 文 章===================
Hi,各位先進大家好:
小弟想在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\Namespace\中增加一機碼,
因OS為Win7 64位元,
會自動寫到HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\Namespace\中
該如何解決?
謝謝!
系統時間:2017-10-22 5:29:31
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!