Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

52 lines
969 B

/*
* S O F . C P P
*
* IStream on file implementation.
*
* Copyright 1986-1997 Microsoft Corporation, All Rights Reserved
*/
#include "_davfs.h"
#include "_sof.h"
HRESULT STDMETHODCALLTYPE
StmOnFile::Read (void __RPC_FAR * pb,
ULONG cb,
ULONG __RPC_FAR * pcb)
{
SCODE sc = S_OK;
ULONG cbr;
// Read from the file
//
if (!ReadFile (m_hf, pb, cb, &cbr, NULL))
{
DebugTrace ("StmOnFile: failed to read (%ld)\n", GetLastError());
sc = HRESULT_FROM_WIN32 (GetLastError());
}
if (pcb)
*pcb = cbr;
return sc;
}
HRESULT STDMETHODCALLTYPE
StmOnFile::Write (const void __RPC_FAR * pb,
ULONG cb,
ULONG __RPC_FAR * pcb)
{
SCODE sc = S_OK;
ULONG cbw;
// Write to the file
//
if (!WriteFile (m_hf, pb, cb, &cbw, NULL))
{
DebugTrace ("StmOnFile: failed to write (%ld)\n", GetLastError());
sc = HRESULT_FROM_WIN32 (GetLastError());
}
if (pcb)
*pcb = cbw;
return sc;
}