Share via


Função SHPathPrepareForWriteW (shlobj_core.h)

Verifica se o caminho existe. Isso inclui remontar unidades de rede mapeadas, solicitar que a mídia ejetável seja reinserida, criar os caminhos, solicitar que a mídia seja formatada e fornecer as interfaces de usuário apropriadas, se necessário. As permissões de leitura/gravação para o meio não são verificadas.

Sintaxe

SHSTDAPI SHPathPrepareForWriteW(
  [in, optional] HWND     hwnd,
  [in, optional] IUnknown *punkEnableModless,
  [in]           LPCWSTR  pszPath,
                 DWORD    dwFlags
);

Parâmetros

[in, optional] hwnd

Digite: HWND

Um identificador para uma janela que especifica a janela pai a ser usada para todas as janelas de interface do usuário que devem ser criadas. Se definido como NULL, as janelas de interface do usuário não serão criadas.

[in, optional] punkEnableModless

Tipo: IUnknown*

Um ponteiro para uma interface IUnknown que especifica o objeto IOleInPlaceActiveObject que implementa o método EnableModeless .

[in] pszPath

Tipo: LPCTSTR

Um ponteiro para uma cadeia de caracteres terminada em nulo de comprimento máximo MAX_PATH que especifica o caminho a ser verificado como válido para gravação. Pode ser um caminho UNC ou de unidade de arquivo.

dwFlags

Tipo: DWORD

Sinalizadores que determinam opções de comportamento. Esse parâmetro pode ser uma combinação dos seguintes valores.

SHPPFW_NONE

Não crie novos diretórios.

SHPPFW_DEFAULT

Padrão. Não solicite ao usuário se um diretório precisar ser criado. Isso é idêntico ao SHPPFW_DIRCREATE. Não passe com SHPPFW_ASKDIRCREATE.

SHPPFW_DIRCREATE

Crie diretórios sem avisar o usuário. Não passe com SHPPFW_ASKDIRCREATE.

SHPPFW_ASKDIRCREATE

Solicite ao usuário antes de criar diretórios. Não passe com SHPPFW_DIRCREATE.

SHPPFW_IGNOREFILENAME

O último item no pszPath é um nome de arquivo, portanto, ignore. Por exemplo, se pszPath="C:\MyDir\MyFile.doc", use apenas "C:\MyDir". Se pszPath="C:\MyFirDir\MySecDir", use apenas "C:\MyFirDir".

SHPPFW_NOWRITECHECK

Não implementado atualmente.

SHPPFW_MEDIACHECKONLY

Windows XP ou posterior. Suprime a caixa de mensagem de erro "não acessível", que é exibida quando ocorre uma falha diferente de um cancelamento de usuário e hwnd não é NULL.

Retornar valor

Tipo: HRESULT

Retorna S_OK se o caminho estiver disponível ou um código de erro caso contrário. Observe que um valor retornado de S_OK não significa que o meio é gravável; isso significa simplesmente que o caminho está disponível.

Comentários

O uso principal dessa função é para um programa marcar um caminho antes de usá-lo e exibir a interface do usuário necessária para solicitar ao usuário. Por exemplo, se o disco na unidade A: estivesse ausente, uma janela que solicita ao usuário para inserir o disco seria exibida.

Observação

O cabeçalho shlobj_core.h define SHPathPrepareForWrite como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho shlobj_core.h (inclua Shlobj.h, Shlobj_core.h)
Biblioteca Shell32.lib
DLL Shell32.dll (versão 5.0 ou posterior)