Compartilhar via


estrutura KNOWNFOLDER_DEFINITION (shobjidl_core.h)

Define as especificidades de uma pasta conhecida.

Sintaxe

typedef struct KNOWNFOLDER_DEFINITION {
  KF_CATEGORY         category;
  LPWSTR              pszName;
  LPWSTR              pszDescription;
  KNOWNFOLDERID       fidParent;
  LPWSTR              pszRelativePath;
  LPWSTR              pszParsingName;
  LPWSTR              pszTooltip;
  LPWSTR              pszLocalizedName;
  LPWSTR              pszIcon;
  LPWSTR              pszSecurity;
  DWORD               dwAttributes;
  KF_DEFINITION_FLAGS kfdFlags;
  FOLDERTYPEID        ftidType;
} KNOWNFOLDER_DEFINITION;

Membros

category

Tipo: KF_CATEGORY

Um único valor das constantes KF_CATEGORY que classifica a pasta como virtual, fixa, comum ou por usuário.

pszName

Tipo: LPWSTR

Um ponteiro para o nome canônico não localizado para a pasta conhecida, armazenado como uma cadeia de caracteres Unicode terminada em nulo. Se essa pasta for uma pasta comum ou por usuário, esse valor também será usado como o nome do valor das configurações do registro "Pastas do Shell do Usuário". Esse nome deve ser um nome exclusivo e legível por humanos. É recomendável que terceiros sigam o formato Company.Application.Name. O nome fornecido aqui não deve ser confundido com o nome de exibição.

pszDescription

Tipo: LPWSTR

Um ponteiro para uma breve descrição da pasta conhecida, armazenada como uma cadeia de caracteres Unicode terminada em nulo. Essa descrição deve incluir a finalidade e o uso da pasta.

fidParent

Tipo: KNOWNFOLDERID

Um valor KNOWNFOLDERID que nomeia outra pasta conhecida para servir como a pasta pai. Aplica-se apenas a pastas comuns e por usuário. Esse valor é usado em conjunto com pszRelativePath. Consulte Comentários para obter mais detalhes.

Esse valor será opcional se nenhum valor for fornecido para pszRelativePath.

pszRelativePath

Tipo: LPWSTR

Opcional. Um ponteiro para um caminho relativo à pasta pai especificada em fidParent. Essa é uma cadeia de caracteres Unicode terminada em nulo, refere-se ao caminho do sistema de arquivos físico e não está localizada. Aplica-se apenas a pastas comuns e por usuário. Consulte Comentários para obter mais detalhes.

pszParsingName

Tipo: LPWSTR

Um ponteiro para o caminho da pasta de namespace do Shell, armazenado como uma cadeia de caracteres Unicode terminada em nulo. Aplica-se somente a pastas virtuais. Por exemplo, Control Panel tem um nome de análise de ::%CLSID_MyComputer%::%CLSID_ControlPanel%.

pszTooltip

Tipo: LPWSTR

Opcional. Um ponteiro para o recurso de dica de ferramenta padrão usado para essa pasta conhecida quando ele é criado. Esta é uma cadeia de caracteres Unicode terminada em nulo neste formulário:

Nome do módulo, ID do recurso

Por exemplo, @%_SYS_MOD_PATH%,-12688 é a dica de ferramenta para Imagens Comuns. Quando a pasta é criada, essa cadeia de caracteres é armazenada na cópia de Desktop.ini dessa pasta. Ele pode ser alterado posteriormente por outras APIs do Shell. Esse recurso pode ser localizado.

Essas informações não são necessárias para pastas virtuais.

pszLocalizedName

Tipo: LPWSTR

Opcional. Um ponteiro para o recurso de nome localizado padrão usado quando a pasta é criada. Esta é uma cadeia de caracteres Unicode terminada em nulo neste formulário:

Nome do módulo, ID do recurso

Quando a pasta é criada, essa cadeia de caracteres é armazenada na cópia de Desktop.ini dessa pasta. Ele pode ser alterado posteriormente por outras APIs do Shell.

Essas informações não são necessárias para pastas virtuais.

pszIcon

Tipo: LPWSTR

Opcional. Um ponteiro para o recurso de ícone padrão usado quando a pasta é criada. Esta é uma cadeia de caracteres Unicode terminada em nulo neste formulário:

Nome do módulo, ID do recurso

Quando a pasta é criada, essa cadeia de caracteres é armazenada na cópia de Desktop.ini dessa pasta. Ele pode ser alterado posteriormente por outras APIs do Shell.

Essas informações não são necessárias para pastas virtuais.

pszSecurity

Tipo: LPWSTR

Opcional. Um ponteiro para uma cadeia de caracteres de formato de linguagem de definição do descritor de segurança . Essa é uma cadeia de caracteres Unicode terminada em nulo que descreve o descritor de segurança padrão que a pasta recebe quando é criada. Se esse parâmetro for NULL, a nova pasta herdará o descritor de segurança de seu pai. Isso é particularmente útil para pastas comuns que são acessadas por todos os usuários.

dwAttributes

Tipo: DWORD

Opcional. Atributos padrão do sistema de arquivos dados à pasta quando ela é criada. Por exemplo, o arquivo pode ser oculto e somente leitura (FILE_ATTRIBUTE_HIDDEN e FILE_ATTRIBUTE_READONLY). Para obter uma lista completa dos valores possíveis, consulte o parâmetro dwFlagsAndAttributes da função CreateFile . Defina como -1 se não for necessário.

kfdFlags

Tipo: KF_DEFINITION_FLAGS

Opcional. Um dos valores a mais da enumeração KF_DEFINITION_FLAGS que permite restringir o redirecionamento, permitir roaming pc-to-pc e controlar a hora em que a pasta conhecida é criada. Defina como 0 se não for necessário.

ftidType

Tipo: FOLDERTYPEID

Um dos valores FOLDERTYPEID que identifica o tipo de pasta conhecido com base em seu conteúdo (como documentos, músicas ou fotografias). Esse valor é um GUID.

Comentários

Os valores fidParent e pszRelativePath funcionam juntos. Por exemplo, suponha que você esteja definindo uma pasta chamada MyNewFolder e queira criar essa pasta como ...< Username>\AppData\Local\MyApp\MyNewFolder. Forneça FOLDERID_LocalAppData em fidParent para representar ...< Username>\AppData\Local. Forneça "\MyApp\MyNewFolder" em pszRelativePath.

Requisitos

Requisito Valor
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]
Cabeçalho shobjidl_core.h (inclua Shobjidl.h)

Confira também

IKnownFolder::GetFolderDefinition

IKnownFolderManager::RegisterFolder

Exemplo de pastas conhecidas