Metodo IHomeGroup::ShowSharingWizard (shobjidl_core.h)
Visualizza una procedura guidata che consente a un utente di creare un gruppo home e quindi recupera le opzioni di condivisione selezionate dall'utente tramite la procedura guidata.
Sintassi
HRESULT ShowSharingWizard(
[in] HWND owner,
[out] HOMEGROUPSHARINGCHOICES *sharingchoices
);
Parametri
[in] owner
Tipo: HWND
Handle della finestra proprietario della procedura guidata, utilizzata per le notifiche. Questo valore può essere NULL.
[out] sharingchoices
Tipo: HOMEGROUPSHARINGCHOICES*
Puntatore a un valore che, quando il metodo viene restituito correttamente, riceve uno o più dei valori seguenti che indicano le librerie e i dispositivi scelti tramite la procedura guidata da condividere con il gruppo Home.
HGSC_NONE (0x00000000)
0x00000000. Nessuna delle opzioni Gruppo home è stata selezionata
HGSC_MUSICLIBRARY (0x00000001)
0x00000001. La libreria Music è stata selezionata per essere condivisa con il gruppo Home.
HGSC_PICTURESLIBRARY (0x00000002)
0x00000002. La raccolta immagini è stata selezionata per essere condivisa con il gruppo Home.
HGSC_VIDEOSLIBRARY (0x00000004)
0x00000004. La raccolta video è stata selezionata per essere condivisa con il gruppo Home.
HGSC_DOCUMENTSLIBRARY (0x00000008)
0x00000008. La raccolta Documenti è stata selezionata per essere condivisa con il gruppo Home.
HGSC_PRINTERS (0x00000010)
0x00000010. I dispositivi stampanti installati sono stati selezionati per essere condivisi con il gruppo Home.
Valore restituito
Tipo: HRESULT
Restituisce S_OK in caso di esito positivo o un valore di errore standard, incluso quanto segue:
Codice restituito | Descrizione |
---|---|
|
L'utente ha annullato la procedura guidata. Usare HRESULT_FROM_WIN32 per estrarre questo codice di errore. |
|
Il computer non è stato aggiunto a un gruppo home o alla rete o al gruppo home non è in uno stato che consente la condivisione ( ad esempio non è connesso alla rete o ha un'altra operazione di condivisione in corso). |
|
Il metodo è stato avviato da un thread MTA (Multithreaded Apartment). |
|
Il parametro sharingchoices è NULL. |
Commenti
Questo metodo deve essere chiamato da un thread apartment a thread singolo (STA).
Esempio
Il codice seguente illustra un esempio di utilizzo di ShowSharingWizard.
HRESULT hr = CoInitializeEx(NULL, COINIT_APARTMENTTHREADED);
if (SUCCEEDED(hr))
{
IHomeGroup *phg;
hr = CoCreateInstance(CLSID_HomeGroup, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&phg));
if (SUCCEEDED(hr))
{
HOMEGROUPSHARINGCHOICES sharingchoices;
hr = phg->ShowSharingWizard(NULL, &sharingchoices);
if (SUCCEEDED(hr))
{
\\ The user selected to share.
if (sharingchoices & HGSC_MUSICLIBRARY)
{
\\ Music
}
if (sharingchoices & HGSC_PICTURESLIBRARY)
{
\\ Pictures
}
if (sharingchoices & HGSC_VIDEOSLIBRARY)
{
\\ Videos
}
if (sharingchoices & HGSC_DOCUMENTSLIBRARY)
{
\\ Documents
}
if (sharingchoices & HGSC_PRINTERS)
{
\\ Printers
}
}
phg->Release();
}
CoUninitialize();
}
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 7 [solo app desktop] |
Server minimo supportato | Windows Server 2008 R2 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | shobjidl_core.h (include Shobjidl.h) |