IWMSFileDescription::get_Type
Previous | Next |
IWMSFileDescription::get_Type
The get_Type method retrieves an enumeration value that indicates whether the IWMSFileDescription interface describes a directory, a media file, or a playlist file.
Syntax
HRESULT get_Type( WMS_FILE_TYPE* pVal );
Parameters
pVal
[out] Member of a WMS_FILE_TYPE enumeration type indicating what the IWMSFileDescription interface describes. This must be one of the following values.
Value | Description |
WMS_FILE_DIRECTORY | Indicates a directory. |
WMS_FILE_MEDIA | Indicates a media file, such as a file with a .wma file name extension. |
WMS_FILE_PLAYLIST | Indicates a playlist file, such as a file with an .asx file name extension. |
WMS_FILE_REMOTE_FILE | Indicates a remote file. |
WMS_FILE_STREAM_FORMAT | The item is a stream format file, such as a file with an .nsc. file name extension. |
WMS_FILE_UNSPECIFIED | The file type is unknown or unspecified. |
Return Values
If the method succeeds, it returns S_OK. If it fails, it returns an HRESULT error code.
Return code | Number | Description |
E_POINTER | 0x80004003 | pVal is a NULL pointer argument. |
Remarks
This method requires the Network System account to have read and browse access to the file being described.
Example Code
#include <windows.h> #include <atlbase.h> // Includes CComBSTR and CComVariant. #include "wmsserver.h" // Declare variables and interfaces. IWMSServer *pServer; IWMSFileDescriptions *pFileDescriptions; IWMSFileDescription *pFileDescription; HRESULT hr; CComVariant varIndex; CComBSTR bstrPath; long lCount; // Initialize the COM library and retrieve a pointer // to an IWMSServer interface. hr = CoInitialize(NULL); hr = CoCreateInstance(CLSID_WMSServer, NULL, CLSCTX_ALL, IID_IWMSServer, (void **)&pServer); if (FAILED(hr)) goto EXIT; // Retrieve a pointer to an IWMSFileDescriptions interface // and retrieve the total count of descriptions. bstrPath = "file://c:\\wmpub\\wmroot"; hr = pServer->get_FileDescriptions(bstrPath, WMS_FILE_UNSPECIFIED, &pFileDescriptions); if (FAILED(hr)) goto EXIT; hr = pFileDescriptions->get_Count(&lCount); if (FAILED(hr)) goto EXIT; // Retrieve information associated with each description. for (long x = 0; x < lCount; x++) { varIndex = x; hr = pFileDescriptions->get_Item(varIndex, &pFileDescription); if (FAILED(hr)) goto EXIT; WMS_FILE_TYPE ftType; hr = pFileDescription->get_Type(&ftType); if (FAILED(hr)) goto EXIT; if (ftType == WMS_FILE_UNSPECIFIED) // TODO: Handle unknown file types. if (ftType == WMS_FILE_DIRECTORY) // TODO: Handle directories. if (ftType == WMS_FILE_MEDIA) // TODO: Handle media files. if (ftType == WMS_FILE_PLAYLIST) // TODO: Handle playlist files. if (ftType == WMS_FILE_STREAM_FORMAT) // TODO: Handle stream format files. // Release temporary COM objects. pFileDescription->Release(); } EXIT: // TODO: Release temporary COM objects and uninitialize COM.
Requirements
Header: wmsserver.h.
Library: WMSServerTypeLib.dll.
Platform: Windows Server 2003 family, Windows Server 2008 family.
See Also
Previous | Next |