HRESULT PrjGetFileDataCB()

in ProjectedFSLib.Managed.API/VirtualizationInstance.cpp [1389:1410]


HRESULT PrjGetFileDataCB(_In_ const PRJ_CALLBACK_DATA* callbackData,
                         _In_ UINT64 byteOffset,
                         _In_ UINT32 length)
{
    if (callbackData->InstanceContext != NULL)
    {
        gcroot<VirtualizationInstance^>& pVirtualizationInstanceObj = *((gcroot<VirtualizationInstance^>*)callbackData->InstanceContext);

        return static_cast<HRESULT>(pVirtualizationInstanceObj->RequiredCallbacks->GetFileDataCallback(
            callbackData->CommandId,
            gcnew String(callbackData->FilePathName),
            byteOffset,
            length,
            GUIDtoGuid(callbackData->DataStreamId),
            (callbackData->VersionInfo != NULL) ? MarshalPlaceholderId(callbackData->VersionInfo->ContentID) : nullptr,
            (callbackData->VersionInfo != NULL) ? MarshalPlaceholderId(callbackData->VersionInfo->ProviderID) : nullptr,
            callbackData->TriggeringProcessId,
            GetTriggeringProcessNameSafe(callbackData)));
    }

    return HRESULT_FROM_WIN32(ERROR_INTERNAL_ERROR);
}