我在编写应用程序以设置某些旧版密钥的权限时遇到问题.旧版密钥已完全锁定,并且在regedit中实际修改它们,您必须拥有所有权,然后添加完全控制权.当试图在代码中复制它时,我无法获得写入错误"访问被拒绝"的密钥.示例代码:
RegistrySecurity rs = new RegistrySecurity();
rs.AddAccessRule(new RegistryAccessRule("Administrators", RegistryRights.FullControl, AccessControlType.Allow));
rs.SetOwner(new NTAccount("Administrators"));
return LocalMachine.CreateSubKey(post, RegistryKeyPermissionCheck.ReadWriteSubTree, rs);
Run Code Online (Sandbox Code Playgroud)
任何想法将不胜感激.我也尝试过OpenSubKey请求写访问权限,但我无法获得密钥.
多谢你们.
我试图压缩大量的数据,有时在100GB的范围内,当我运行我写的例程时,看起来文件的大小与之前的大小完全相同.有没有其他人在GZipStream上遇到过这个问题?
我的代码如下:
byte[] buffer = BitConverter.GetBytes(StreamSize);
FileStream LocalUnCompressedFS = File.OpenWrite(ldiFileName);
LocalUnCompressedFS.Write(buffer, 0, buffer.Length);
GZipStream LocalFS = new GZipStream(LocalUnCompressedFS, CompressionMode.Compress);
buffer = new byte[WriteBlock];
UInt64 WrittenBytes = 0;
while (WrittenBytes + WriteBlock < StreamSize)
{
fromStream.Read(buffer, 0, (int)WriteBlock);
LocalFS.Write(buffer, 0, (int)WriteBlock);
WrittenBytes += WriteBlock;
OnLDIFileProgress(WrittenBytes, StreamSize);
if (Cancel)
break;
}
if (!Cancel)
{
double bytesleft = StreamSize - WrittenBytes;
fromStream.Read(buffer, 0, (int)bytesleft);
LocalFS.Write(buffer, 0, (int)bytesleft);
WrittenBytes += (uint)bytesleft;
OnLDIFileProgress(WrittenBytes, StreamSize);
}
LocalFS.Close();
fromStream.Close();
Run Code Online (Sandbox Code Playgroud)
StreamSize是一个8字节的UInt64值,用于保存文件的大小.我将这8个字节原始写入文件的开头,所以我知道原始文件的大小.Writeblock的值为32kb(32768字节).fromStream是从中获取数据的流,在本例中是一个FileStream.压缩数据前面的8个字节是否会导致问题?
我最近参与了将Aerospike数据存储实施到我们的产品中.我们一直在尝试为命名空间设计最佳配置.持久化数据的要求意味着我们需要将存储引擎作为设备.我们已将内存中的数据指定为true.
我的问题是:是否data-in-memory尝试将所有后备存储数据加载到内存中,如模糊描述所暗示的那样?
始终保留内存中所有数据的副本.
或者它会关注memory-size命名空间的设置,只加载memory-size来自后备存储的数据量?
从文档中检索了设置的描述.
我一直在和那个第一次实施空中飞行试验的人交谈,试图找出他是否知道并且不确定所以我正在寻求澄清.
作为参考,我的命名空间配置看起来像这样,内存配额明显小于后备存储
namespace Test {
replication-factor 2
memory-size 4G
default-ttl 0
storage-engine device {
file /opt/aerospike/data/Test.dat
filesize 16G
data-in-memory true
}
}
Run Code Online (Sandbox Code Playgroud)