Поделиться через


Интерфейс IBITSExtensionSetupFactory (bitscfg.h)

Используйте интерфейс IBITSExtensionSetupFactory , чтобы получить указатель на интерфейс IBITSExtensionSetup . Используйте этот интерфейс только при использовании интерфейса IBITSExtensionSetup в программе установки, которая также устанавливает сервер BITS. Так как кэш IIS не содержит расширения BITS, добавленные во время установки, расширения недоступны с помощью функции ADSI ADsGetObject . Интерфейс IBITSExtensionSetupFactory предоставляет метод GetObject , который обращается к расширениям BITS и выполняет ту же привязку, что и функция ADsGetObject .

Чтобы получить указатель на интерфейс IBITSExtensionSetupFactory , вызовите функцию CoCreateInstance , как показано в примере кода.

Наследование

Интерфейс IBITSExtensionSetupFactory наследуется от интерфейса IUnknown . IBITSExtensionSetupFactory также имеет следующие типы членов:

Методы

Интерфейс IBITSExtensionSetupFactory содержит следующие методы.

 
IBITSExtensionSetupFactory::GetObject

Используйте метод GetObject для получения указателя на интерфейс IBITSExtensionSetup. Этот метод выполняет ту же привязку, что и функция ADSI ADsGetObject.

Комментарии

Этот интерфейс регистрируется на сервере при установке серверного расширения BITS.

В Windows Server 2003 установите расширение сервера BITS с помощью мастера компонентов Windows . В панель управления выберите Добавить или удалить программы. Затем выберите Add/Remove Windows Components (Добавить или удалить компоненты Windows ), чтобы открыть мастер компонентов Windows. Серверное расширение BITS является подкомпонентом служб IIS, которые являются подкомпонентом сервера веб-приложений.

Примеры

В следующем примере показано, как использовать интерфейс IBITSExtensionSetupFactory для получения указателя на интерфейс IBITSExtensionSetup .

//Set the BITSUploadEnabled IIS configuration setting.
//The pszPath parameter contains the path to the directory service. 
//For example, "IIS://<machine name>/w3svc/1/<virtual directory>".
//The Enable parameter contains true (enable) or false (disable).
HRESULT SetBITSUploadEnabledSetting(LPWSTR pszPath, bool Enable)
{
  HRESULT hr;
  IBITSExtensionSetupFactory* pExtensionSetupFactory = NULL;
  IBITSExtensionSetup* pExtensionSetup = NULL;

  hr = CoCreateInstance(__uuidof(BITSExtensionSetupFactory),
    NULL, CLSCTX_INPROC_SERVER,
    __UUIDOF(IBITSExtensionSetupFactory),
    (void**)&pExtensionSetupFactory);

  if (SUCCEEDED(hr))
  {
    hr = pExtensionSetupFactory->GetObject(BSTR(pszPath), &pExtensionSetup);
    if (SUCCEEDED(hr))
    {
      if (Enable)
      {
        hr = pExtensionSetup->EnableBITSUploads();
      }
      else
      {
        hr = pExtensionSetup->DisableBITSUploads();
      }

      pExtensionSetup->Release();
    }
    pExtensionSetupFactory->Release();
  }

  return hr;
}

Требования

Требование Значение
Минимальная версия клиента Windows Vista
Минимальная версия сервера Windows Server 2003
Целевая платформа Windows
Header bitscfg.h
Распространяемые компоненты BITS 1.5 в Windows XP

См. также раздел

IBITSExtensionSetup