C# 32位程序与64位程序读\写注册表的界别


 

在线安装基本上没难度,跟着官方文档走即可:

图片 1

包信息

图片 2

只顾一下,安装只协理64系统

图片 3

加上文书

图片 4

内容就是官方给的:

图片 5

安装吧,奇慢无比

图片 6

图片 7

现已安装完毕,下边就不兴高采烈继续发了,没意思,跟着官方文档走两遍吧~

      2:写入键值–>Registry.LocalMachine.CreateSubKey(“..Key的路径…”),然后调用SetValue()写入键值。

先说推荐安装:在线安装,跟着官方走可以制止有些问题

  总结:X64,(或者Any Cpu)
Platform下的程序会操作64位机器存放注册表地点的注册表音信,X86
Platform下的程序会操作32位机器存放注册表地方的注册表消息(即:WOW6432Node节点下的注册表信息)

 平台之大势谁能挡?
带着您的Net飞奔啊!http://www.cnblogs.com/dunitian/p/4822808.html

      文件系统:32位过程无法加载64位Dll,64位过程也不得以加载32位Dll。

style=”line-height: 1.5; background-color: initial;”>有Linux基础的同志可以看:

style=”line-height: 1.5; background-color: initial;”>安装包:

style=”line-height: 1.5; background-color: initial;”>https://fastdl.mongodb.org/linux/mongodb-linux-x86\_64-rhel70-3.4.1.tgz

style=”line-height: 1.5; background-color: initial;”>安装过程

style=”line-height: 1.5; background-color: initial;”>图片 8

 

安装pstree小工具,以及其行使

图片 9

关闭mongodb

图片 10

设置开机启动:

图片 11

  这里关键教学一下32位程序和64位程序在64位平台上读\写注册表的分别【注:32位程序是–>Build的Platform
target为X86;64位程序–>Build的Platform
target为X64;并且VS2010在默认的动静下为X86编译环境(即:32位)】

图片 12

  既然知道了注册表音讯分成了两部分,那么就足以想到:用32位程序和64位程序去操作注册表的时候会操作不同职务的注册表消息。下边例子可以充裕表明这种说法。

1.离线安装:(分两批,有Linux基础和无基础)

  

新手安装过程中日常遇上的不当:http://www.cnblogs.com/dunitian/p/6274437.html

  若大家对这段程序不做另外改动,在X64(或Any
Cpu)的阳台下编译、运行以来,会发觉在注册表的SoftWare节点的首先层子节点中开创出了EricSun节点(并在此节点下成立相应的注册表信息),然后我们用同一的次序去读注册表的时候也会发觉她们读取的地方不同(以程序中的时间音信加以区分)

 

      注册表:为了防备注册表键争执,64位机器注册表音讯分成了六个部分。一部分是特地给64位系统(即:64位程序)访问的,另一有的是特别给32位系统(即:32位程序)访问的,放在Wow6432Node下边。(Wow6432Node这一个节
点存在于HKEY_LOCAL_MACHINE和HKEY_CURRENT_USER下面)

2.在线安装:

  简要复述一下答辩功底:微软为了让32位程序不做任何修改就能运行在64的操作系统上,添加了一个卓殊最紧要的WOW64子系统来促成这些效应,WOW64是Windows-32-on-Windows-64的简称,从总体上来说,WOW64是一套基于用户形式的动态链接库,它可以把32位应用程序的暴发的命令翻译成64位系统可以承受的格式,即:WOW
层处理诸如在 32 位和 64 位形式里面切换处理器以及模拟 32
位系统的事情。

图片 13

using System; 
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Win32;

 namespace OperateRegistrationTable 
{ 
     class Programe
     {
         static void Main(string[] args)
         {
             OperatingRegistryKey();
         }

         public static void OperatingRegistryKey()
         {
             string keyValue = string.Empty;
             try
             {
                 //向注册表中写信息
                 using (RegistryKey key = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\EricSun\MyTestKey", true))
                 {
                     if (key == null)
                    {
                         using (RegistryKey myKey = Registry.LocalMachine.CreateSubKey(@"SOFTWARE\EricSun\MyTestKey"))
                         {
                             myKey.SetValue("MyKeyName", "Hello EricSun." + DateTime.Now.ToString());
                         }
                     }
                     else
                     {
                         key.SetValue("MyKeyName", "Hello EricSun." + DateTime.Now.ToString());
                     }
                 }

                 //读取注册表信息
                 using (RegistryKey currentKey = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\EricSun\MyTestKey", false))
                 {
                     if (currentKey == null)
                     {
                         Console.WriteLine("Hello EricSun, The Key you tried to open doesn't exist.");
                     }
                     else
                     {
                         keyValue = currentKey.GetValue("MyKeyName").ToString();
                         Console.WriteLine("The Key Value is: {0}", keyValue);
                     }
                 }
             }
             catch (Exception ex)
             { }
         }
     }
 }

 IP配置我在此之前有说过,这边就不另行了,直接看这么些:http://www.cnblogs.com/dunitian/p/6658578.html

  用C#实现注册表的读\写是一件很容易的事情,在此不做详细的上书。

简言之汇总:

  将此段程序在X86(32位)平台下编译、运行,会发现在注册表的WOW6432Node节点下创建了子键:埃里克(Eric)Sun\MyTestKey,并且填充了键MyKeyName的值(用时间再说区别其值),而在SoftWare的首先层子节点中并不曾察觉此埃里克(Eric)(Eric)Sun。可以规定32位程序是操作注册表信息是身处WOW6432Node节点下的

图片 14

      1:读取键值–>Registry.LocalMachine.OpenSubKey(“..Key的路径…”,
true),这里的第2个bool类型的参数含义为:标志打开的键值是否可以变更(即:是否可以用SetValue()给键赋值),然后调用GetValue()方法就能把键值读取出来。

图片 15

转载于:http://www.cnblogs.com/mingmingruyuedlut/archive/2011/01/20/1940371.html

style=”line-height: 1.5; background-color: initial;”>无Linux基础的老同志:

先去官方下载离线安装包:https://www.mongodb.com/

图片 16

ftp连接一下服务器,把离线包上传上去

图片 17

图片 18

XShell连接一下:

图片 19

图片 20

图片 21

解压文件(你输一点就足以按tab键,它会自行补全):tar -xzf mongo*

图片 22

解压命令不了然的可以去文档库看基本命令 http://dnt.dkill.net/dnt

图片 23

切换来root用户,拷贝文件夹到/usr/local目录(一般软件都设置在这),重命名文件夹

cp -r mongodb-….. /usr/local/

mv mongodb…./ mongodb

图片 24

指令不明了的请看:

图片 25

图片 26

切换到/usr/local/mongodb目录下,创立数据库目录和日记文件,后台运行mongod
./ 代表当前目录

mkdir dbs

touch logs

./mongod –dbpath=/usr/local/mongodb/dbs/
–logpath/usr/local/mongodb/logs –fork

图片 27

查阅过程,停止进程

pstree -p | grep mongod

pkill mongod

图片 28

比方提醒没有pstree命令,表达你也是细微安装的,不用慌,装一下即可

yum install -y psmisc
(对于放心的行使,就可以-y了,全自动化安装,不放心的就自己一个个看了)

图片 29

是不是嫌启动太劳顿呢?可以简化的==》如图

图片 30

设要是第一次使用vi,先按一下 i,进入编辑情势,输入完毕后,按
ESC,输入:wq回车即可。如若发现不管怎么搞都退不出,也不用怕,强退用
:q!

图片 31

输入 ./mongod -f mongod.conf 即可启动

图片 32

相似的话,添加启动项这么干就行了,逆天玩kali的时候也是这么干的,上次发的ssh无法开行也是如此干的~~~但是。。。不亮堂为啥,CentOS这么干不行,所以, style=”color: #ff6600;”>跳过这一步

图片 33

图片 34

先切换来 该目录:cd /lib/systemd/system

再创立 mongodb的一个服务 :vi mongodb.service

输入以下内容:

[Unit]

Description=mongodb
After=network.target remote-fs.target
nss-lookup.target

[Service]
Type=forking
style=”color: #ff6600;”>ExecStart=/usr/local/mongodb/bin/mongod
–config /usr/local/mongodb/bin/mongod.conf
ExecReload=/bin/kill -s HUP
$MAINPID
style=”color: #ff6600;”>ExecStop=/usr/local/mongodb/bin/mongod
–shutdown –config /usr/local/mongodb/bin/mongod.conf
PrivateTmp=true

[Install]
WantedBy=multi-user.target

图片 35

起步服务:systemctl start mongodb.service

截至服务:systemctl stop mongodb.service  

开机启动 :systemctl enable mongodb.service

图片 36

图片 37

不明了的可以看常用Linux文档:http://dnt.dkill.net/dnt/linux/cmd.html

图片 38

重启后发觉~mongodb已经开机自启动了!

图片 39

前天可以把一发端的公文删了~

图片 40

  32位与64位特点的五个首要表现方面为:文件系统与注册表

他日继续嗨,下面多少个图评释,数据库没问题

  用C#操作注册表重要拔取的六个函数为(已经渗透到下面的实例程序中,注:要引入Microsoft.Win32命名空间):

 

新学Mongodb我要么引进离线安装

图片 41

 

 —————————————

图片 42

 

通过逆天推行,给mongodb指定log文件时,该log能够不存在,比如:

 图片 43