3.3.1.4 Raw File Transfer

A direct file transfer (one that does not use RDC) starts by a call to InitializeFileTransferAsync with rdcDesired set to 0. The transfer might be fully finished when this call completes, or it might have to be finished by using either RawGetFileData or RawGetFileDataAsync. When the server signals the end of file, the client uses RdcClose to dispose of the context handle associated with the file download. The state transitions associated with a raw file download are illustrated in the following state diagram.

Raw file transfer state machine

Figure 8: Raw file transfer state machine