Condividi tramite


Funzione SHPathPrepareForWriteW (shlobj_core.h)

Verifica se il percorso esiste. Ciò include il rimontaggio delle unità di rete mappate, la richiesta di reinserimento di supporti espulsi, la creazione dei percorsi, la richiesta di formattazione del supporto e la fornitura delle interfacce utente appropriate, se necessario. Le autorizzazioni di lettura/scrittura per il supporto non vengono controllate.

Sintassi

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

Parametri

[in, optional] hwnd

Tipo: HWND

Handle di una finestra che specifica la finestra padre da utilizzare per tutte le finestre dell'interfaccia utente che devono essere create. Se impostato su NULL, le finestre dell'interfaccia utente non vengono create.

[in, optional] punkEnableModless

Tipo: IUnknown*

Puntatore a un'interfaccia IUnknown che specifica l'oggetto IOleInPlaceActiveObject che implementa il metodo EnableModeless .

[in] pszPath

Tipo: LPCTSTR

Puntatore a una stringa con terminazione Null di lunghezza massima MAX_PATH che specifica il percorso da verificare come valido per la scrittura. Può trattarsi di un percorso UNC o di un'unità file.

dwFlags

Tipo: DWORD

Flag che determinano le opzioni di comportamento. Questo parametro può essere una combinazione dei valori seguenti.

SHPPFW_NONE

Non creare nuove directory.

SHPPFW_DEFAULT

Default. Non richiedere all'utente se è necessario creare una directory. Questa operazione è identica a SHPPFW_DIRCREATE. Non passare con SHPPFW_ASKDIRCREATE.

SHPPFW_DIRCREATE

Creare directory senza chiedere conferma all'utente. Non passare con SHPPFW_ASKDIRCREATE.

SHPPFW_ASKDIRCREATE

Richiedere all'utente prima di creare directory. Non passare con SHPPFW_DIRCREATE.

SHPPFW_IGNOREFILENAME

L'ultimo elemento in pszPath è un nome file, quindi ignorare. Ad esempio, se pszPath="C:\MyDir\MyFile.doc", usare solo "C:\MyDir". Se pszPath="C:\MyFirDir\MySecDir", usare solo "C:\MyFirDir".

SHPPFW_NOWRITECHECK

Attualmente non implementato.

SHPPFW_MEDIACHECKONLY

Windows XP o versione successiva. Elimina la finestra di messaggio di errore "non accessibile", che viene visualizzata quando si verifica un errore diverso da un annullamento dell'utente e hwnd non è NULL.

Valore restituito

Tipo: HRESULT

Restituisce S_OK se il percorso è disponibile o un codice di errore in caso contrario. Si noti che un valore restituito di S_OK non significa che il supporto è scrivibile; significa semplicemente che il percorso è disponibile.

Osservazioni

L'uso principale di questa funzione è per un programma per controllare un percorso prima di usarlo e visualizzare l'interfaccia utente necessaria per richiedere all'utente. Ad esempio, se il disco nell'unità A: mancava, verrà visualizzata una finestra che richiede all'utente di inserire il disco.

Nota

L'intestazione shlobj_core.h definisce SHPathPrepareForWrite come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows 2000 Professional [solo app desktop]
server minimo supportato Windows 2000 Server [solo app desktop]
piattaforma di destinazione Finestre
intestazione shlobj_core.h (includere Shlobj.h, Shlobj_core.h)
libreria Shell32.lib
dll Shell32.dll (versione 5.0 o successiva)