我在程序中调用SetSystemFileCacheSize来设置系统文件缓存的大小,但却始终错误,代码如下:
public const ulong FILE_CACHE_MAX_HARD_ENABLE = 0x00000001;
public const ulong FILE_CACHE_MAX_HARD_DISABLE = 0x00000002;
public const ulong FILE_CACHE_MIN_HARD_ENABLE = 0x00000004;
public const ulong FILE_CACHE_MIN_HARD_DISABLE = 0x00000008; [DllImport("Kernel32.dll", SetLastError = true)]
public static extern bool GetSystemFileCacheSize(out ulong lpMinimumFileCacheSize
, out ulong lpMaximumFileCacheSize
, out ulong lpFlags); [DllImport("Kernel32.dll", SetLastError = true)]
public static extern bool SetSystemFileCacheSize(ulong MinimumFileCacheSize, ulong MaximumFileCacheSize, ulong Flags);
这是声明部分,一个是GetSystemFileCacheSize函数,用来获取当前的配置,一个是SetSystemFileCacheSize函数用来设置新参数。
以下是调用:
ulong lpMinimumFileCacheSize = 1048576;
ulong lpMaximumFileCacheSize = 1048576 * 1024; bool isok = SetSystemFileCacheSize(lpMinimumFileCacheSize, lpMaximumFileCacheSize, FILE_CACHE_MAX_HARD_ENABLE | FILE_CACHE_MIN_HARD_ENABLE);调用的时候始终是返回false,而且参数也没有被修改,调用GetSystemFileCacheSize倒是可以正常获取当前设置。
public const ulong FILE_CACHE_MAX_HARD_ENABLE = 0x00000001;
public const ulong FILE_CACHE_MAX_HARD_DISABLE = 0x00000002;
public const ulong FILE_CACHE_MIN_HARD_ENABLE = 0x00000004;
public const ulong FILE_CACHE_MIN_HARD_DISABLE = 0x00000008; [DllImport("Kernel32.dll", SetLastError = true)]
public static extern bool GetSystemFileCacheSize(out ulong lpMinimumFileCacheSize
, out ulong lpMaximumFileCacheSize
, out ulong lpFlags); [DllImport("Kernel32.dll", SetLastError = true)]
public static extern bool SetSystemFileCacheSize(ulong MinimumFileCacheSize, ulong MaximumFileCacheSize, ulong Flags);
这是声明部分,一个是GetSystemFileCacheSize函数,用来获取当前的配置,一个是SetSystemFileCacheSize函数用来设置新参数。
以下是调用:
ulong lpMinimumFileCacheSize = 1048576;
ulong lpMaximumFileCacheSize = 1048576 * 1024; bool isok = SetSystemFileCacheSize(lpMinimumFileCacheSize, lpMaximumFileCacheSize, FILE_CACHE_MAX_HARD_ENABLE | FILE_CACHE_MIN_HARD_ENABLE);调用的时候始终是返回false,而且参数也没有被修改,调用GetSystemFileCacheSize倒是可以正常获取当前设置。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货