Esempio LABRADOR: implementazione di un server privo di interfaccia utente

Aggiornamento: novembre 2007

Nell'esempio LABRADOR viene illustrato come utilizzare ATL per implementare un server EXE privo di interfaccia utente. Il server consente la creazione di un oggetto in grado di supportare due interfacce personalizzate, definite in Labrador.idl.

In Esempio di attributi per LABRADOR viene fornita la versione con gli attributi di questo esempio.

Nota sulla sicurezza:

Questo esempio di codice viene fornito solo a scopo dimostrativo e non deve essere utilizzato in applicazioni o siti Web, poiché potrebbe non implementare le tecniche migliori a livello di sicurezza. Microsoft esclude ogni responsabilità per danni diretti o indiretti derivanti dall'utilizzo dell'esempio di codice per scopi diversi da quelli previsti.

Per ottenere gli esempi e le istruzioni per l'installazione:

  • In Visual Studio scegliere Esempi dal menu Guida.

    Per ulteriori informazioni, vedere Individuazione dei file di esempio.

  • La versione più recente e l'elenco completo degli esempi sono disponibili in linea alla pagina Visual Studio 2008 Samples.

  • È anche possibile trovare gli esempi sul disco rigido del computer. Per impostazione predefinita, gli esempi e il file Leggimi vengono copiati in una cartella nel percorso \Programmi\Visual Studio 9.0\Samples\. Per le versioni Express di Visual Studio, tutti gli esempi sono disponibili in linea.

Generazione ed esecuzione dell'esempio

Nell'esempio vengono utilizzati tre componenti: il server, la DLL di marshalling e il driver.

Per generare e registrare i componenti

  1. Aprire il file di soluzione Labrador.sln.

  2. Scegliere Genera soluzione dal menu Genera.

    Verranno generati e registrati il server, la DLL di marshalling e il driver.

Per eseguire il driver

  • Scegliere Avvia senza eseguire debug dal menu Debug.

    Mediante il driver verrà creato un oggetto che sarà utilizzato in alcune chiamate e quindi rilasciato.

Parole chiave

Nell'esempio vengono utilizzate le parole chiave seguenti:

_CrtDumpMemoryLeaks; _tcsicmp; _tcstok; _tprintf; _vstprintf; ATLASSERT; BEGIN_COM_MAP; BEGIN_OBJECT_MAP; CComModule::Init; CComModule::RegisterClassObjects; CComModule::RevokeClassObjects; CComModule::Unlock; CComModule::UnregisterServer; CComObjectRoot; CoCreateInstance; COM_INTERFACE_ENTRY; CoUninitialize; DECLARE_NOT_AGGREGATABLE; DECLARE_REGISTRY; DispatchMessage; END_OBJECT_MAP; GetCurrentThreadId; GetMessage; OBJECT_ENTRY; OutputDebugString; PostThreadMessage; Trace; va_end; va_list; va_start; wcscpy_s

Vedere anche

Altre risorse

Esempi relativi ad ATL