Metodo IDesktopGadget::RunGadget (shobjidl.h)
Aggiunge un gadget installato al desktop.
Sintassi
HRESULT RunGadget(
[in] LPCWSTR gadgetPath
);
Parametri
[in] gadgetPath
Tipo: LPCWSTR
Puntatore al percorso completo (assoluto) di una cartella gadget. Un gadget che non è in pacchetto con Windows può essere eseguito solo da una delle due posizioni seguenti. L'installazione del gadget in qualsiasi altra posizione causerà l'esito negativo di questo metodo con un errore di accesso negato.
(%ProgramFiles%\Windows Sidebar\Shared Gadgets)
Si tratta del percorso consigliato per l'installazione di gadget non Microsoft, disponibile per tutti gli utenti.
(%LOCALAPPDATA%\Microsoft\Windows Sidebar\Gadgets)
Questa posizione deve essere usata per un'installazione a utente singolo del gadget.
Valore restituito
Tipo: HRESULT
Restituisce S_OK se ha esito positivo o un valore di errore in caso contrario, incluso quanto segue:
Codice restituito | Descrizione |
---|---|
|
Il gadget è già in esecuzione. |
|
Si è verificato un errore che coinvolge il percorso della cartella del gadget a cui punta gadgetPath. |
Commenti
"Esecuzione" di un gadget qui significa che il gadget viene aggiunto al desktop.
RunGadget può essere chiamato solo su un gadget già installato nel sistema. Non può essere chiamato su un gadget che è già in esecuzione, solo un'istanza di un gadget può essere eseguita in qualsiasi momento tramite questo metodo.
Poiché l'installazione di gadget non ha un'interfaccia utente personalizzata, questo metodo viene spesso eseguito come ultimo passaggio nel processo di installazione o come parte del primo lancio di un'applicazione a cui è associato il gadget. L'installazione del gadget in %ProgramFiles%\Windows Sidebar\Shared Gadgets richiede privilegi amministrativi. È pertanto consigliabile eseguire l'installazione del gadget come parte di un'installazione di Microsoft Installer (MSI).
Le applicazioni per utente devono installare i gadget per utente. Le applicazioni per computer devono installare i gadget per ogni computer. Ciò garantisce un'esperienza unificata per l'utente.
Esempio
Nell'esempio seguente viene illustrato IDesktopGadget::RunGadget in uso.
HRESULT RunMyGadget(PCWSTR pszGadgetPath)
{
IDesktopGadget *pDG;
HRESULT hr = CoCreateInstance(CLSID_DesktopGadget,
NULL,
CLSCTX_INPROC_SERVER,
IID_PPV_ARGS(&pDG));
if (SUCCEEDED(hr))
{
hr = pDG->RunGadget(pszGadgetPath);
pDG->Release();
}
return hr;
}
Requisiti
Client minimo supportato | Windows 7 [solo app desktop] |
Server minimo supportato | Windows Server 2008 R2 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | shobjidl.h |