compress.c

来自「这是一个开放源代码的与WINNT/WIN2K/WIN2003兼容的操作系统」· C语言 代码 · 共 52 行

C
52
字号
/*
 * COPYRIGHT:       See COPYING in the top level directory
 * PROJECT:         File Management IFS Utility functions
 * FILE:            reactos/dll/win32/fmifs/compress.c
 * PURPOSE:         Volume compression
 *
 * PROGRAMMERS:     Emanuele Aliberti
 */

#include "precomp.h"

/*
 * @implemented
 */
BOOLEAN NTAPI
EnableVolumeCompression(
	IN PWCHAR DriveRoot,
	IN USHORT Compression)
{
	HANDLE hFile;
	DWORD RetBytes;
	BOOL Ret;

	hFile = CreateFileW(
		DriveRoot,
		FILE_READ_DATA | FILE_WRITE_DATA,
		FILE_SHARE_READ | FILE_SHARE_WRITE,
		NULL,
		OPEN_EXISTING,
		FILE_FLAG_BACKUP_SEMANTICS,
		NULL);

	if (hFile == INVALID_HANDLE_VALUE)
		return FALSE;

	Ret = DeviceIoControl(
		hFile,
		FSCTL_SET_COMPRESSION,
		&Compression,
		sizeof(USHORT),
		NULL,
		0,
		&RetBytes,
		NULL);

	CloseHandle(hFile);

	return (Ret != 0);
}

/* EOF */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?