Método IKnownFolderManager::RegisterFolder (shobjidl_core.h)

Adiciona uma nova pasta conhecida ao registro. Usado especialmente por ISVs (fornecedores independentes de software) que estão adicionando uma de suas próprias pastas ao sistema de pastas conhecido.

Sintaxe

HRESULT RegisterFolder(
  [in] REFKNOWNFOLDERID             rfid,
  [in] const KNOWNFOLDER_DEFINITION *pKFD
);

Parâmetros

[in] rfid

Tipo: REFKNOWNFOLDERID

Um GUID que representa a pasta conhecida.

[in] pKFD

Tipo: const KNOWNFOLDER_DEFINITION*

Um ponteiro para uma estrutura de KNOWNFOLDER_DEFINITION válida que fornece os detalhes da nova pasta.

Valor retornado

Tipo: HRESULT

Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

Nota Esse método atualiza HKEY_LOCAL_MACHINE e, portanto, precisa ser executado no contexto de um administrador. Os programas de instalação precisam de privilégios de administrador para registrar ou cancelar o registro de uma pasta conhecida.
 
IKnownFolderManager::RegisterFolder tenta verificar se o novo KNOWNFOLDERID não se refere a um caminho do sistema de arquivos já apontado por um KNOWNFOLDERID existente. Se o novo KNOWNFOLDERID for encontrado para fazer isso, esse método falhará.

Vários valores KNOWNFOLDERID para o mesmo caminho do sistema de arquivos podem causar vários problemas, como conflitos no arquivo Desktop.ini que levam a confusão sobre qual idioma ou propriedades mostrar para a pasta. Vários valores KNOWNFOLDERID também podem causar confusão quanto ao caminho da barra de endereços ou quais tarefas mostrar para a pasta no Windows Explorer.

Você pode suprimir a exibição da página Personalizar do janela Propriedades da pasta conhecida. Para fazer isso, defina o seguinte registro REG_DWORD valor:

HKEY_LOCAL_MACHINE
   Software
      Microsoft
         Windows
            CurrentVersion
               Explorer
                  FolderDescriptions
                     Folder GUID
                        PropertyBag
                           NoCustomize = 0x00000001 (1)

Requisitos

   
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho shobjidl_core.h (inclua Shobjidl.h)
DLL Shell32.dll

Confira também

IKnownFolderManager

IKnownFolderManager::UnregisterFolder

Exemplo de pastas conhecidas