本文整理汇总了C++中PDOKAN_OPERATIONS::SetEndOfFile方法的典型用法代码示例。如果您正苦于以下问题:C++ PDOKAN_OPERATIONS::SetEndOfFile方法的具体用法?C++ PDOKAN_OPERATIONS::SetEndOfFile怎么用?C++ PDOKAN_OPERATIONS::SetEndOfFile使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PDOKAN_OPERATIONS
的用法示例。
在下文中一共展示了PDOKAN_OPERATIONS::SetEndOfFile方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
NTSTATUS
DokanSetAllocationInformation(
PEVENT_CONTEXT EventContext,
PDOKAN_FILE_INFO FileInfo,
PDOKAN_OPERATIONS DokanOperations)
{
PFILE_ALLOCATION_INFORMATION allocInfo =
(PFILE_ALLOCATION_INFORMATION)((PCHAR)EventContext + EventContext->Operation.SetFile.BufferOffset);
// A file's allocation size and end-of-file position are independent of each other,
// with the following exception: The end-of-file position must always be less than
// or equal to the allocation size. If the allocation size is set to a value that
// is less than the end-of-file position, the end-of-file position is automatically
// adjusted to match the allocation size.
if (DokanOperations->SetAllocationSize) {
return DokanOperations->SetAllocationSize(
EventContext->Operation.SetFile.FileName,
allocInfo->AllocationSize.QuadPart,
FileInfo);
}
// How can we check the current end-of-file position?
if (allocInfo->AllocationSize.QuadPart == 0) {
return DokanOperations->SetEndOfFile(
EventContext->Operation.SetFile.FileName,
allocInfo->AllocationSize.QuadPart,
FileInfo);
} else {
DbgPrint(" SetAllocationInformation %I64d, can't handle this parameter.\n",
allocInfo->AllocationSize.QuadPart);
}
return STATUS_SUCCESS;
}