Funzione CreateHardwareEventMoniker
[Questa funzione è disponibile tramite Windows XP con Service Pack 2 (SP2) e Windows Server 2003. Potrebbe essere modificato o non disponibile nelle versioni successive di Windows.]
Crea un moniker che rappresenta un componente hardware e il relativo gestore eventi associato. AutoPlay usa questa funzione per consentire alle applicazioni di usare eventi AutoPlay.
Sintassi
HRESULT CreateHardwareEventMoniker(
_In_ REFCLSID clsid,
_In_ LPCTSTR pszEventHandler,
_Out_ IMoniker **ppmoniker
);
Parametri
-
clsid [in]
-
Tipo: REFCLSID
ID della classe a cui viene associato il moniker.
-
pszEventHandler [in]
-
Tipo: LPCTSTR
Nome del gestore eventi.
-
ppmoniker [out]
-
Tipo: IMoniker**
Indirizzo di una variabile del puntatore che riceve il puntatore dell'interfaccia IMoniker .
Valore restituito
Tipo: HRESULT
Se questa funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
Usare CreateHardwareEventMoniker durante la registrazione di applicazioni in esecuzione in modo che tali applicazioni abbiano accesso agli eventi AutoPlay. Per usare gli eventi AutoPlay nelle applicazioni in esecuzione, è innanzitutto necessario creare un nuovo componente che implementa l'interfaccia IHWEventHandler . Inizializzare questa interfaccia con il valore InitCmdLine della voce del gestore specifico sotto la chiave Handlers , perché AutoPlay non chiama il metodo Initialize .
È necessario chiamare CreateHardwareEventMoniker per ottenere un moniker che rappresenta il componente e il relativo gestore eventi. Usare quindi il valore restituito nel parametro ppmoniker per registrare il componente nella tabella di oggetti in esecuzione (ROT), come illustrato nell'esempio.
Si noti che CreateHardwareEventMoniker non è definito in un file di intestazione. Per usarlo nel codice, è necessario ottenere un handle per il file Shsvcs.dll tramite una chiamata a LoadLibrary. Tale handle viene quindi usato in una chiamata a GetProcAddress per ottenere un'istanza della funzione CreateHardwareEventMoniker .
La chiamata a IRunningObjectTable::Register richiede l'immissione delle informazioni AppID seguenti nel Registro di sistema.
HKEY_CLASSES_ROOT
AppID
MyApp.exe
(Default) = MyApplication
AppID [REG_SZ] = {Your GUID here}
HKEY_CLASSES_ROOT
AppID
{The same GUID here}
(Default) = MyApplication
RunAs = Interactive User
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows XP [solo app desktop] |
Server minimo supportato |
Windows Server 2003 [solo app desktop] |
Intestazione |
|
DLL |
|