Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This method creates a periodic advise request.

Syntax

HRESULT AdvisePeriodic(
  REFERENCE_TIME 
rtStartTime,
  REFERENCE_TIME 
rtPeriodTime,
  HSEMAPHORE 
hSemaphore,
  DWORD* 
pdwAdviseCookie
);

Parameters

rtStartTime

[in] Time of the first notification, in 100-nanosecond units.

Must be greater than zero and less than MAX_TIME.

rtPeriodTime

[in] Time between notifications, in 100-nanosecond units.

Must be greater than zero.

hSemaphore

[in] Handle to a semaphore, created by the caller.

pdwAdviseCookie

[out] Pointer to a variable that receives an identifier for the advise request.

Return Value

Returns an HRESULT value.

Possible values include the following.

Value Description

S_OK

Success.

E_INVALIDARG

Invalid time values.

E_OUTOFMEMORY

Failure.

E_POINTER

Null pointer argument.

Remarks

At each notification time, the clock releases the semaphore specified in the hSemaphoreparameter. When no further notifications are required, call Unadviseand pass the pdwAdviseTokenvalue returned from this call.

The following code example creates an advise request that signals five seconds from the time it is created, and again every second thereafter.

Copy Code
IReferenceClock *pRefClock = NULL;
// Get an IReferenceClock pointer (not shown).
DWORD		dwAdviseToken;
HANDLE		 hSemaphore = CreateSemaphore(NULL, 0, 0x7FFFFFFF,
NULL);
REFERENCE_TIME rtPeriodTime = 10000000; // A one-second interval
REFERENCE_TIME rtNow;
pRefClock->GetTime(&rtNow);
pRefClock->AdvisePeriodic(rtNow + (5 * rtPeriodTime),
						rtPeriodTime, 
						hSemaphore, 
						&dwAdviseToken);
...
pRefClock->Unadvise(dwAdviseToken);

Requirements

Windows Embedded CE Windows CE 3.0 and later
Windows Mobile Pocket PC for Windows Mobile Version 5.0 and later, Smartphone for Windows Mobile Version 5.0 and later
Note Microsoft DirectShow applications and DirectShow filters have different include file and Library requirements
For more information, see Setting Up the Build Environment

See Also