.net2005 中My.Computer.Registry 對象的 CreateSubKey 方法可用于創(chuàng)建注冊表項。
建網站原本是網站策劃師、網絡程序員、網頁設計師等,應用各種網絡程序開發(fā)技術和網頁設計技術配合操作的協(xié)同工作。成都創(chuàng)新互聯(lián)專業(yè)提供做網站、成都做網站,網頁設計,網站制作(企業(yè)站、響應式網站開發(fā)、電商門戶網站)等服務,從網站深度策劃、搜索引擎友好度優(yōu)化到用戶體驗的提升,我們力求做到極致!
過程
創(chuàng)建注冊表項
使用 CreateSubKey 方法,指定在其下放置注冊表項的配置單元以及注冊表項的名稱。參數(shù) Subkey 不區(qū)分大小寫。此示例在 HKEY_CURRENT_USER 下創(chuàng)建注冊表項 MyTestKey。
My.Computer.Registry.CurrentUser.CreateSubKey("MyTestKey")
創(chuàng)建注冊表項并在注冊表項中設置值
使用 CreateSubkey 方法,指定在其下放置注冊表項的配置單元以及注冊表項的名稱。此示例在 HKEY_CURRENT_USER 下創(chuàng)建注冊表項 MyTestKey。
My.Computer.Registry.CurrentUser.CreateSubKey("MyTestKey")
用 SetValue 方法設置值。此示例將字符串值"MyTestKeyValue" 設置為 "This is a test value"。
My.Computer.Registry.SetValue("HKEY_CURRENT_USER\MyTestKey", _
"MyTestKeyValue", "This is a test value.")
我來告訴大家什么是純綠軟件--(希望無知者不要再胡說八道了)
有人說:
還有哪些所謂寫綠色軟件的人是不懂windows編程,根本就寫不出注冊的過程。所以自我安慰的叫綠色軟件。不知大家注意沒有綠色軟件是不可以在天加刪除中刪掉的。只要它運行就會產生很多拉圾,而且是到處亂放,這就是為什么容易出問題的原因所在。
我只能說,這樣說話的人是個電腦肓。
或是根本不懂得綠色軟件的含義。
綠色軟件有如下嚴格特征:
1、不對注冊表進行任何操作(或只進行非常少的,一般朋友能理解的操作,典型的是開機起動。少數(shù)也進行一些臨時操作,一般在程序結束前會自動清除寫入的信息)。
2、不對系統(tǒng)敏感區(qū)進行操作,一般包括系統(tǒng)起動區(qū)根目錄、安裝目錄(windows目錄)、程序目錄(Program Files)、帳戶專用目錄。
3、不向非自身所在目錄外的目錄進行任何寫操作。
4、因為程序運行本身不對除本身所在目錄外的任何文件產生任何影響,所以,根本不存在安裝和卸載問題。
5、程序的刪除,只要把程序所在目錄和對應的快捷方式刪了就可以了(如果你手工在桌面或其它位置設了快捷方式),只要這樣做了,程序就完全干凈地從你的電腦里刪去了,不留任何垃圾。
以上就是綠色軟件的特征。
對于編程人員來說,做一個綠色軟件不難,做一個非綠色軟件也不難,但是為什么那么多軟件不做成綠色的呢?下面作一些講解:
一、大型軟件公司的大型軟件為什么不做成綠色的:
1、大型軟件公司并非沒有能力做出綠色軟件,但它們的軟件涉及的方面過多,需要對系統(tǒng)原有的一些設置進行改動,以使電腦按照軟件設計要求進行操作。以PhotoShop為例,它就需要在注冊表里添加很多種格式文件的默認打開方法為PhtoShop.exe,以便大家雙擊此類文件后就自動打開PhotoShop以便編輯。
2、為了更好的為一些對電腦知識不是很了解的朋友進行一些自動設定。還是以PhotoShop為例,這兒已經有朋友發(fā)布了解壓即可用的,但是,還是不少的朋友,連解壓也不會,解壓后都不知道點哪個文件開始正常運行,也不知道怎么在桌面上建快捷方式。就算別人為他做完了上面的事,要是有一天,他不想要PhotoShop了,也不知道原來安裝的程序在哪個目錄,怎么刪去,甚至不知道如何刪除快捷方式,更別說如何完全干凈的刪除了。做成安裝版就可以自動為使用者完成上面的事了。
(特別說明:上面對PhotoShop的舉例,只是用它來舉例罷了,其實網上流行的解壓即可用的PhotoShop也不是嚴格的綠色軟件,其運行還是會寫注冊表的,如果不正常的使用它,注冊表里還是會留下垃圾的,不過,這種垃圾對你的電腦影響不是很大,會的朋友可以手動刪除這些垃圾)
二、做成安裝軟件很難嗎?那些所謂寫綠色軟件的人是不懂windows編程,根本就寫不出注冊的過程嗎。
1、我只能說,某些人的這種說法是一種非常不負責任的說法。其人根本不懂得編程,可笑而幼稚,只能以電腦肓來稱呼。
2、現(xiàn)在流行的各種編程軟件分三大類:
A、第一類是微軟出的編程軟件。
有Visual Studio系列(流行版本為6.0)以及新出不是很久的VS.NET系列,它們都自帶了安裝發(fā)布功能。特別是Visual Studio中的VB做出的東西,如果不發(fā)布,或不進行相關的處理,在別的沒有安裝VB的機器上是根本運行不起來的,因為VB編譯出來的程序在根本上是偽編譯,其指令通過VB運行庫轉譯后運行,沒有VB運行庫的機器是根本無法正常運行此類程序的。當然了,有經驗的朋友可以手工把運行庫復制入相應的目錄中,或是和VB做出的程序放在一起。其它的Visual Studio做出的程序有的有類似的上述情況。
在微軟出品的VS.NET中,VS.NET兼容了多種編程語言,但按其說法,最終的代碼其根本實質會變成一致。但是它做出的也同樣是偽代碼,也就是說,其代碼不是根本上的機器二進制代碼,不對機器進行直接指令指示,而是向.NET運行環(huán)境(NET Framework接口)發(fā)出指令,而由NET Framework轉譯指令為機器代碼,再進行持行。這就要求你的機器上安裝了NET Framework。NET Framework在win95/win98/windows2000上默認是沒有安裝的,如要安裝,需要從網上下載或其它方式得到后安裝。(微軟官方有下載,大家也可以使用windows updata得到)。XP、windows 2003已集成。最后要說的是,微軟宣言,要將原來的API接口(windows一直使用的標準編程接口)作廢,改用.NET接口,故.NET編程方式可能是將來的標準方式。VS.NET系列的軟件也集成了通用安裝發(fā)布軟件,只要正確掌握它,就能很好的做出樓主所謂的安裝程序。
B、第二類軟件是大名鼎鼎的Borland公司出品的編程軟件,它也包括兩大系列。即API系列和.NET系列。其.Net系列的情況和VS.NET是類似的。而其API的情況就有些不同了。
Borland的Borland C++Builder和Borland Delphi是兩種非常流行的針對win進行API編程的編程環(huán)境。他們也帶有install shield,可以說是編程人員必學的。不過,很多的稍簡單的程序,編制者并不用它,因為,使用Borland C++Builder/Delphi開發(fā)出來的程序,只要正確設定幾個參數(shù),編譯后得出的程序就可以在幾乎所有版本的win中很好的直接運行了,當前,前提是,沒有使用有特殊要求的第三方控件,或某些必要特別設定的數(shù)據(jù)源(BDE等)。而且,稍熟練的編制者可以直接在程序中通過程序自行進行一些簡單的環(huán)境設定,如寫注冊表(關聯(lián)文件、開機起動)、利用資源文件的方式向重要的目錄寫入文件,注冊組件等等,可以說一點兒也不難。
C、第三類是一些比較偏的編程語言了,如易語言等,使用的人很少,本人很老實的說,具體情況我也不是很了解。
三、為什么一些個人的簡單的軟件會做成非綠色的:
1、編寫者水平太低。低到只會使用微軟的VB等,雖然做出的東西也值得一用,但是不知道怎么把它變成綠色的,只能依*VB等本身的功能以保證程序的正常運行。
2、編寫者懶,寫出程序后想,只要程序能正常讓別人用就可以了,不值得太費腦子,依*VB等本身的功能發(fā)布吧,反正這樣保險。
3、編寫者水平不低,也不懶,但是它的程序用到了一些第三方控件,這些控件需要發(fā)布安裝才能正常運行(需要注冊特定的.DLL,需要把一些文件放到特定的位置,如典型的,要放入windows下的system32目錄中。)
4、編寫者為一些水平實在太低的人考慮,為了那些人的方便,如典型的《笨笨鐘》就是此類,《FoxMail》、《winamp》也是此類,當然,F(xiàn)oxMail、《winamp》是寫注冊表的,通過其主程序進行一些環(huán)境的設定,嚴格上來說,也不是純綠的。
5、編寫者有一些特定的,不想為人知的東西要放入你的機器。比如典型的《阿達連連看》就是這樣,它要把一些特定的與注冊相關的東西放入你的windows目錄,而且不想被人發(fā)現(xiàn)。又如網際快車的某些版本,它要把廣告程序代碼放入你的windows安裝目錄。
6、編寫者有惡意,它的程序其實捆綁了木馬、病毒等(對這一類的就要非常小心了),在安裝的過程中這些惡意的程序就會釋放出在,不知不覺中潛入你的計算機。
四、是否可以做出功能復雜,但又是嚴格意義上的純綠軟件:
答案是非??隙ǖ?,因為,其實我們正在使用的很多程序都是純綠的,特別是很多的游戲,雖然它們也要安裝后才能運行,其實,你把它們安裝后的目錄放在別的機器上也一樣的可以使用,并不必再次安裝,其安裝的意義就是***編寫者為一些水平實在太低的人考慮***,如《三角洲》、《魔獸爭霸III》。特別如網絡游戲《傳奇》(這個程序寫的是真的很經典了,決對純綠)等等著名的游戲都是如此。其需要設定的環(huán)境記錄可以不寫在注冊表內,而利用*.INI文件來記錄。我不知道有幾個人有膽子說編寫這些程序的人水平低下。
五、綜上所述:
1、要做出一個純綠色的軟件,并不是很難,當然,可能要求編制者更多的依*自已去寫代碼(在必要情況下),在程序涉及方面比較多的情況下,可能給編制者加重很多的工作量。而要做一個非純綠的軟件,那就更容易了,往往可以利用編寫器的一些自帶功能自動完成。
2、純綠的不帶安裝功能的軟件非常適合于對電腦比較熟悉的朋友使用,而綠色帶安裝的軟件適合于所有人使用。而自以為對電腦很熟的朋友往往更喜歡不帶安裝功能就可以用的。原因有如下:帶安裝的軟件往往會有反安裝程序,如果安裝目錄被人為刪去,反安裝程序或一些相關注冊表信息往會留在機器中,成為垃圾。
3、為了自已的機器的安全、快速,也為了知情權(一個程序到底在安裝和使用過程中在自已的機器里寫了什么),本人極力推薦純綠的軟件。即便在必要的情況下非純綠,也希望有詳細的說明。說明軟件可能會寫注冊表的那些部分,會改動機器里的哪些文件,會向哪些目錄寫入什么文件,內容。而且,希望這成為軟件界的一個標準。這樣,我們的電腦才會有安全可言!
4、為什么現(xiàn)在流行的軟件中真正純綠的軟件不是很多呢?這個問題很不好回答。在這兒可以非常遺憾的告訴大家,有些朋友在網上下載的winrar綠色版、winamp綠色版等等,都不是真正意義上的純綠軟件。
比如winrar,它就因為為了在鼠標右鍵上出winrar的功能菜單而寫動了注冊表,因為要關聯(lián)比如擴展名為.rar等等的文件(這些都可以在winrar程序里設定和更改)而寫動了注冊表。如果使用winrar后,強行把winrar程序目錄刪去,注冊表里的這一部分注冊表信息必然成為垃圾(其它的也許有本人沒有發(fā)現(xiàn)的動作,如沒有說出來是本人水平不足的問題了,呵呵)。
winamp綠色版似乎要好一些(本人的感覺),如果你設定了一些文件的關聯(lián),如雙擊*.mp3等文件winamp就會自動打開播放的話,你強行刪去winamp所在目錄,這部分文件的關聯(lián)信息也會成為垃圾留在注冊表中。
(上面兩個只是舉例,解決辦法很多對電腦熟悉的朋友是會的,在這兒,我們并不討解決辦法,另外,應該說,上面兩程序是很規(guī)范的東西,它們的這些動作是無可厚非的)
現(xiàn)在再回過頭來說說“流行的軟件中真正純綠的軟件不是很多”。
A、有些功能是非通過寫注冊表來實現(xiàn)不可,最最常見的就是文件關聯(lián)、鼠標右鍵菜單。(呵呵,這種操作可以說,稍熟編程的人都會)。但是很少有個人編寫者考慮到別人不用他的程序時,要怎么讓使用者方便地復位這些文件關聯(lián),方便地清理右鍵菜單。
B、部分程序編寫者喜歡把注冊信息放在注冊表中。(為什么喜歡?就因為注冊表是龐大的參數(shù)庫,他們以為,要從這樣一個大參數(shù)庫找出他們寫入的一個信息是大海撈針。事實上,的確很多朋友是難以找出來的,話又說回來,會者不難,難者不會,在這兒我也不細說了)
C、一些大公司的程序實在對系統(tǒng)有太多的改動,他們做好了安裝和卸載工具,這些軟件涉及了系統(tǒng)的方方面面,想簡單的刪除是很難的。典型的就如微軟的Office等等。這些軟件說實在的,別說你不老實的刪除了,就是老實的卸載,有時也是很難成功的。最好的辦法就是裝上后就別卸把,把它看成是系統(tǒng)的一部分(不管你樂不樂意,呵呵)。(又及,這類程序也不是很少,這兒只舉一例)。
D、只有那些其功能可以不涉及更改系統(tǒng)默認行為的軟件才可能在真正意義上做到純綠。((也許我羅嗦了)系統(tǒng)默認行為包括“文件關聯(lián)”,“右鍵菜單”,“控制面版”里的項目,真實或虛擬的硬件驅動以及其它我想不起來或是我也不知道的東西……)。當然了,還要編寫者有真正的為使用者著想的精神,有較好的技術。
六、有部分并非純綠的軟件,偽裝成純綠的,在運行過程中向注冊表寫東西,向關鍵目錄區(qū)寫東西,甚至更改重要文件。這不是純綠軟件,只能說是偽純綠。又及,很多網上流行的軟件,號稱純綠版,實際上只是一些原版本經過稍許改進等,原軟件并不設計為純綠,在運行過程中還是會寫注冊表(甚至寫關鍵win目錄),也不是嚴格意義上的純綠。反過來,也有部分其實是純綠的軟件,為了大家的方便,做成了安裝發(fā)布式的。比如最典型的就是《傳奇》《三角洲》、《魔獸爭霸III》等一些游戲,一些工作軟件如《FOXMAIL》(FoxMail至少在針對IE選項里的“程序”頁里的"電子郵件"相關項進行了注冊表相關寫操作)《winamp》《winrar》等等準綠軟件(在這兒,我只說它們是準綠的)也是如此。這類軟件其實安裝出來后,把其目錄放在任何一臺電腦上都能或者能較為正常的運行,這也是為什么大家能很方便的把它們改造成綠色軟件的原因。現(xiàn)在真正的純綠軟件實際上是很少的,至于以后,也還是看不到純綠一統(tǒng)天下的希望的,大家不可因噎廢食。不可能只用純綠軟件而不用其它。而且大公司的軟件一般還是非常可*的。
七、非純綠軟件的危害:
1、向系統(tǒng)關鍵目錄或不屬于該程序所在目錄亂存放文件(默認臨時文件夾除外)在原則上對機器的運行速度是沒有大的影響的,除非亂放的文件改動了原有的系統(tǒng)關鍵文件,才會至使電腦變慢或運行不正常。但是,因為這些目錄中的文件一般都比較多,很難對它們進行清理(鬼才知道哪個是能刪,那個不能刪),會使你的硬盤空間浪費,對于硬盤空間緊的朋友,那就非常討厭了(此外,心里也不爽)。
2、向注冊表亂寫信息,如果亂寫的信息并不影響系統(tǒng)的關鍵部分,對系統(tǒng)運行也是沒有嚴重影響的,不過,有些信息寫入了不刪去,你的系統(tǒng)就會有些討厭的東西出來,舉例:你裝上winrar后(典型安裝設置),直接把winrar刪了,你就會發(fā)現(xiàn),你的右鍵菜單里會多出一些讓人哭笑不得的東西。要注意的是,隨著機器的使用,軟件的安裝、刪除,這些可以感覺到和不能感覺到的信息會越來越多,而你的機器在運行過程中,幾乎隨時隨刻不能離開對注冊表的相關操作,注冊表里的信息過多,機器查找所需信息的速度就會變慢,這時,機器的運行就表現(xiàn)為“變慢了”,這往往是一臺電腦為什么越用越慢的最重要的原因之一。(提示:因為多數(shù)情況下,一個軟件對注冊表寫的東西并不多,所以,在每一次垃圾進去了,用戶是很難感覺到影響的)(又及,一些注冊表清理軟件,本人也用過,雖有作用,但是風險不少,是好是壞我也不知怎么評價……)。這些垃圾信息并非只有小公司的軟件會留下,很多大公司的軟件據(jù)本人的感覺,也是會留垃圾的,本人也很無耐。
解決辦法嗎?恕本人無能,在當今軟件亂世,只怕多少有些無可耐何。本人是使用最笨的方法:Ghost鏡像還原?;旧厦咳了膫€月給它倒回一次。(工作文檔等當然不能放在系統(tǒng)區(qū)了,呵呵)。
八、希望無知者不要信口開河,多多學習。最后,附上一個我自已做的純綠軟件---BCB編寫的《水波特效演示》程序,給大家玩玩叭。
補充——初步判斷一個軟件是否純綠軟件的方法(注,只有對電腦比較熟悉的人能才辦到,如果下面的說明,你基本能看懂,而無需請教別人,你就能做到了):
一、系統(tǒng)測試法:
1、將軟件在別人的機器上安裝,安裝完成后,把安裝出來的目錄復制到你的機器中(如果本身就號稱純綠免裝的,這步就免了)。
2、你的機器要求安裝windows2000 或 windows XP 或 windows2003,使用受限用戶登錄(要求受限用戶無對關鍵注冊表有寫權,無對重要目錄有寫權,當然了,默認的新建的用戶就是這樣的(XP下要將用戶設為受限))。
3、受限用戶登錄后運行復制來的安裝目錄下的軟件的主程序,如果正常,90%是純綠。
4、對省下10%的說明——不排除可能編寫者隱了動作,如果不成功也不報錯,也不退出,還正常運行,一但能寫的時就它就寫。另外,還有一部分程序,如FoxMail,只對當前帳戶相關于注冊表進行寫操作,因為“帳戶相關于注冊表"是"屬于"對應帳戶的,在受限帳號下也是可寫的(特別說明一下,注銷該帳戶,注冊表中該帳戶的所有項目都會清去,所以也可以算是綠的)。
二、軟件監(jiān)控法:
1、如果上面的步子還不令你放心,還有一個工具值得一用,那就是《Filemon》,這是一個可以監(jiān)視系統(tǒng)中任何軟件對硬盤的讀寫操作的程序,通過它,你可以查到某個程序對你的硬盤的什么位置的什么文件進行了操作,這個程序只能在管理員帳戶下用(切入系統(tǒng)進程)。
2、對于注冊表的監(jiān)視是很麻煩的事,《Regmon》可以辦到,同上面的工具一樣Regmon要求在管理員帳戶下用(切入系統(tǒng)進程)。
3、90%的軟件和上面的兩個軟件無沖突,省下的9%的是作者有意防止被監(jiān)視(為什么有意防止被監(jiān),那你就自個想吧,一般都是比較可怕的東西),最后1%可能是因為程序實在相互不兼容了。
以上兩工具都為同一公司(Sysinternals)出品,值得一用,附在最后(XTJS.rar)。
三、并非所有的不能在受限帳戶下用的程序都不是純綠的。某些程序可能要切入別的系統(tǒng)程序中,某些程序需要得到硬件信息等,這些最只有在管理員帳戶下才能實現(xiàn)。還有一些程序可能沒有考慮多用戶操作系統(tǒng)等。只能說,通過了上面的測試的程序90%是純綠的,沒有通過的話90%是非純綠的。有經驗的朋友還可以據(jù)自已的經驗得到更準確的結論。參考資料:以上資料,從網上下載的,與本人無關
的完整路徑寫在HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
就可以自啟動了。
以下是我前一段時間寫的防u盤自動運行的程序,里面可以找到如何操作注冊表。
Option Explicit
Global Const REG_SZ As Long = 1
Global Const REG_DWORD As Long = 4
Global Const HKEY_CLASSES_ROOT = H80000000
Global Const HKEY_CURRENT_USER = H80000001
Global Const HKEY_LOCAL_MACHINE = H80000002
Global Const HKEY_USERS = H80000003
Global Const ERROR_NONE = 0
Global Const ERROR_BADDB = 1
Global Const ERROR_BADKEY = 2
Global Const ERROR_CANTOPEN = 3
Global Const ERROR_CANTREAD = 4
Global Const ERROR_CANTWRITE = 5
Global Const ERROR_OUTOFMEMORY = 6
Global Const ERROR_INVALID_PARAMETER = 7
Global Const ERROR_ACCESS_DENIED = 8
Global Const ERROR_INVALID_PARAMETERS = 87
Global Const ERROR_NO_MORE_ITEMS = 259
Global Const KEY_ALL_ACCESS = H3F
Global Const REG_OPTION_NON_VOLATILE = 0
Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hkey As Long) As Long
Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hkey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, phkResult As Long) As Long
Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hkey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Long, lpcbData As Long) As Long
Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hkey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpValue As Long, ByVal cbData As Long) As Long
Private Sub cmdAbout_Click()
MsgBox "作者wolfccb不對本軟件可能造成的任何錯誤或損失負責,請自行承擔使用風險。", vbInformation, "About"
End Sub
Private Sub cmdDefault_Click()
Check0.Value = 1
Check1.Value = 0
Check2.Value = 1
Check3.Value = 0
Check4.Value = 1
Check5.Value = 0
Check6.Value = 0
End Sub
Private Sub cmdExit_Click()
Unload Me
End Sub
Private Sub cmdRecommend_Click()
Check0.Value = 1
Check1.Value = 1
Check2.Value = 1
Check3.Value = 1
Check4.Value = 1
Check5.Value = 0
Check6.Value = 1
End Sub
Private Sub cmdSet_Click()
Dim hkey As Long
Dim lvalue As Long
Dim cddata As Long
Dim retval As Long
lvalue = GetValue
retval = RegOpenKeyEx(HKEY_CURRENT_USER, "Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", 0, KEY_ALL_ACCESS, hkey)
retval = RegSetValueEx(hkey, "NoDriveTypeAutoRun", 0, REG_DWORD, lvalue, 4)
RegCloseKey hkey
If retval = 0 Then
MsgBox "設置已保存。", vbInformation, "提示"
Else
MsgBox "保存失敗,錯誤代碼:" + CStr(retval), vbExclamation, "錯誤"
End If
End Sub
Private Sub Form_Load()
Dim hkey As Long
Dim lvalue As Long
Dim cddata As Long
Dim retval As Long
retval = RegOpenKeyEx(HKEY_CURRENT_USER, "Software\Microsoft\Windows\CurrentVersion\Policies\Explorer", 0, KEY_ALL_ACCESS, hkey)
If retval 0 Then
MsgBox "打開注冊表失敗,錯誤代碼:" + CStr(retval), vbExclamation, "錯誤"
End If
retval = RegQueryValueEx(hkey, "NoDriveTypeAutoRun", 0, REG_DWORD, lvalue, 4)
RegCloseKey hkey
If retval 0 Then
MsgBox "讀取注冊表失敗,錯誤代碼:" + CStr(retval), vbExclamation, "錯誤"
End If
ShowCheck (lvalue)
End Sub
Private Sub ShowCheck(lvalue As Long)
Check0.Value = lvalue Mod 2
lvalue = (lvalue - Check0.Value) / 2
Check1.Value = lvalue Mod 2
lvalue = (lvalue - Check1.Value) / 2
Check2.Value = lvalue Mod 2
lvalue = (lvalue - Check2.Value) / 2
Check3.Value = lvalue Mod 2
lvalue = (lvalue - Check3.Value) / 2
Check4.Value = lvalue Mod 2
lvalue = (lvalue - Check4.Value) / 2
Check5.Value = lvalue Mod 2
lvalue = (lvalue - Check5.Value) / 2
Check6.Value = lvalue Mod 2
End Sub
Private Function GetValue() As Long
GetValue = Check0.Value + Check1.Value * 2 + Check2.Value * 4 + Check3.Value * 8 + Check4.Value * 16 + Check5.Value * 32 + Check6.Value * 64 + 128
End Function
以上。
餓的老狼
'先建立一個注冊表鍵;此列注冊表鍵名為TestKey。
My.Computer.Registry.CurrentUser.CreateSubKey("TestKey")
'定義注冊表鍵路徑,并賦值于注冊表鍵;此列路徑為HKEY_CURRENT_USER\TestKey,賦值為 "Test Value"
My.Computer.Registry.SetValue("HKEY_CURRENT_USER\TestKey", "TestValue", "This is a test value.")
最簡單的辦法就是用shell
語句
添加和創(chuàng)建注冊表項
shell
"cmd
/c
reg
add
hklm\software\myco
/v
data
/t
reg_binary
/d
fe340ead"
刪除注冊表項
shell
"cmd
/c
reg
delete
hklm\software\myco\myapp\timeout"
刪除注冊表項
timeout
及其所有子項和值
具體語法請在cmd中輸入
reg/?
將下面的form1.exe 換成你的程序的名稱即可
-------------------------------------------------------------------------
Option Explicit
'---------------處理注冊表的函數(shù)-----------------------
Private Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey, ByVal lpszSubKey$, lphKey)
Private Declare Function RegSetValue Lib "advapi32.dll" Alias "RegSetValueA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal dwType As Long, ByVal lpData As String, ByVal cbData As Long) As Long
Const HKEY_LOCAL_MACHINE = H80000002
Const REG_SZ = 1
'HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
Private Sub Command1_Click()
'聲明變量
Dim sKeyName As String, sKeyValue As String, sKeyValueIcon As String
Dim Ret As Integer, lphKey As Long
sKeyName = "Software\Microsoft\Windows\CurrentVersion\Run"
sKeyValue = App.Path IIf(Len(App.Path) 3, "\" "form1.exe", "form1.exe")
Ret = RegCreateKey(HKEY_LOCAL_MACHINE, sKeyName, lphKey)
Ret = RegSetValue(lphKey, "", REG_SZ, sKeyValue, 0)
End Sub
以上是資料,你自己研究一下