Compartir a través de


Función SHPathPrepareForWriteA (shlobj_core.h)

Comprueba si existe la ruta de acceso. Esto incluye volver a montar las unidades de red asignadas, solicitar que se vuelvan a insertar medios expulsables, crear las rutas de acceso, solicitar el formato del medio y proporcionar las interfaces de usuario adecuadas, si es necesario. No se comprueban los permisos de lectura y escritura para el medio.

Sintaxis

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

Parámetros

[in, optional] hwnd

Tipo: HWND

Identificador de una ventana que especifica la ventana primaria que se va a usar para las ventanas de interfaz de usuario que se deben crear. Si se establece en NULL, no se crean ventanas de interfaz de usuario.

[in, optional] punkEnableModless

Tipo: IUnknown*

Puntero a una interfaz IUnknown que especifica el objeto IOleInPlaceActiveObject que implementa el método EnableModeless .

[in] pszPath

Tipo: LPCTSTR

Puntero a una cadena terminada en null de longitud máxima MAX_PATH que especifica la ruta de acceso que se va a comprobar como válida para escribir. Puede ser una ruta de acceso UNC o de unidad de archivo.

dwFlags

Tipo: DWORD

Marcas que determinan las opciones de comportamiento. Este parámetro puede ser una combinación de los valores siguientes.

SHPPFW_NONE

No cree directorios nuevos.

SHPPFW_DEFAULT

Predeterminada. No pida al usuario si es necesario crear un directorio. Esto es idéntico a SHPPFW_DIRCREATE. No pase con SHPPFW_ASKDIRCREATE.

SHPPFW_DIRCREATE

Cree directorios sin preguntar al usuario. No pase con SHPPFW_ASKDIRCREATE.

SHPPFW_ASKDIRCREATE

Preguntar al usuario antes de crear directorios. No pase con SHPPFW_DIRCREATE.

SHPPFW_IGNOREFILENAME

El último elemento de pszPath es un nombre de archivo, por lo que se omite. Por ejemplo, si pszPath="C:\MyDir\MyFile.doc", use solo "C:\MyDir". Si pszPath="C:\MyFirDir\MySecDir", use solo "C:\MyFirDir".

SHPPFW_NOWRITECHECK

No implementado actualmente.

SHPPFW_MEDIACHECKONLY

Windows XP o posterior. Suprime el cuadro de mensaje de error "no accesible", que se muestra cuando se produce un error distinto de una cancelación del usuario y hwnd no es NULL.

Valor devuelto

Tipo: HRESULT

Devuelve S_OK si la ruta de acceso está disponible o un código de error de lo contrario. Tenga en cuenta que un valor devuelto de S_OK no significa que el medio se pueda escribir; simplemente significa que la ruta de acceso está disponible.

Comentarios

El uso principal de esta función es que un programa compruebe una ruta de acceso antes de usarla y muestre la interfaz de usuario necesaria para solicitar al usuario. Por ejemplo, si faltaba el disco de la unidad A: , aparecerá una ventana que pide al usuario que inserte el disco.

Nota:

El encabezado shlobj_core.h define SHPathPrepareForWrite como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado shlobj_core.h (incluya Shlobj.h, Shlobj_core.h)
Library Shell32.lib
Archivo DLL Shell32.dll (versión 5.0 o posterior)