Come aprire la sezione del profilo globale

Traduzione articoli Traduzione articoli
Identificativo articolo: 188482 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

In questo articolo viene fornito un codice che viene illustrato come aprire la sezione del profilo globale e di recuperare una delle proprietÓ presenti in questa sezione. Oltre a fornire un elenco completo delle proprietÓ esistenti nella sezione profile globale. La chiave consiste nel richiedere la sezione contenente pbGlobalProfileSectionGuid proprio identificatore univoco del profilo. Questa Ŕ una costante che Ŕ definita nel file Edkmdb.h.

Informazioni

Potrebbe essere necessario recuperare o modificare i valori di proprietÓ esistenti nella sezione profilo globale di un profilo MAPI (Messaging Application Programming Interface). Una sezione del profilo globale disponibile per ogni profilo che utilizza il servizio di messaggistica di Microsoft Exchange. In questa sezione"globale" consente di memorizzare i dati comuni, oltre a singole sezioni per provider di trasporto, provider di un archivio per l'utente, provider di un archivio per l'archivio pubblico e provider di un archivio per ogni cassetta postale aggiuntiva per i quali l'utente dispone di accesso delegati.

Il codice riportato di seguito Ŕ un esempio di come aprire la sezione del profilo globale di un profilo MAPI e come estrarre la proprietÓ PR_PROFILE_HOME_SERVER:

Codice di esempio

   #include <objbase.h>
   #include <mapix.h>
   #include <mapidefs.h>
   #include <mapiguid.h>
   #include <edk.h>
   #include <edkmdb.h>


   HRESULT GetServerName()
   {
     HRESULT hRes = S_OK;   // HRESULT returned by this method
     LPPROFADMIN pAdminProfiles = NULL; // Pointer to IProfAdmin object
     LPSERVICEADMIN pSvcAdmin = NULL;  // Pointer to IServiceAdmin object
     LPPROFSECT pGlobalProfSect = NULL; // Pointer to IProfSect object
     LPSPropValue pProps = NULL; // Pointer to PropValue
                                // PR_PROFILE_HOME_SERVER
     char szServerName[256]; // String that will contain the server name
     // If your app doesn't already initialize the MAPI subsystem,
     // do it now.
     if ( FAILED ( hRes = MAPIInitialize ( NULL ) ) )
        return hRes;

     // Get a Profile admin object
     if ( FAILED ( hRes = MAPIAdminProfiles ( 0L, &pAdminProfiles ) ) )
        goto CleanUp;

     // Get a ServiceAdmin object
     if ( FAILED ( hRes = pAdminProfiles -> AdminServices (
                                           "<profile name>",
                                           NULL,
                                           0L,  // Your app's window handle
                                           0L,
                                           &pSvcAdmin ) ) )
       goto CleanUp;

      // Get the Global Profile Section by calling
      // IServiceAdmin::OpenProfileSection use pbGlobalProfileSectionGuid
      // defined in EDKMDB.H as the entry ID to request
      // The default return is an IProfSect interface.
      if ( FAILED ( hRes = pSvcAdmin -> OpenProfileSection (
                                  (LPMAPIUID)pbGlobalProfileSectionGuid,
                                  NULL,
                                  0L,
                                  &pGlobalProfSect ) ) )
         goto CleanUp;


      // Call HrGetOneProp to get PR_PROFILE_HOME_SERVER
      if ( FAILED ( hRes = HrGetOneProp ( pGlobalProfSect,
                                          PR_PROFILE_HOME_SERVER,
                                          &pProps ) ) )
         goto CleanUp;


      // Set Server name pointer to string equal to value returned from
      // HrGetOneProp
      strcpy ( szServerName, "PR_PROFILE_HOME_SERVER == " );
      strcat ( szServerName, pProps -> Value.lpszA );

      // Replace window handle param with your application's window handle
      MessageBox ( 0L, szServerName, "Exchange Server Name", MB_OK );

      CleanUp:

      // Free all memory allocated by any MAPI calls

      if ( NULL != pAdminProfiles )
         pAdminProfiles -> Release ();

      if ( NULL != pSvcAdmin )
         pSvcAdmin -> Release ( );

      if ( NULL != pGlobalProfSect )
         pGlobalProfSect -> Release ( );

      if ( NULL != pProps )
         MAPIFreeBuffer ( &pProps );

      pSvcAdmin = NULL;
      pGlobalProfSect = NULL;
      pProps = NULL;
      pAdminProfiles = NULL;

      // Return the HRESULT to the calling function
      return hRes;
      }
				
Nota: Assicurarsi di includere le seguenti librerie nel processo di collegamento del database:
Kernel32.lib User32.lib, Msvcrt.lib, Mapi32.lib, Edkguid.lib, Edkdebug.lib Edkutils.lib, Edkmapi.lib.
╚ inoltre necessario selezionare l'opzione per ignorare le librerie predefinite nelle impostazioni generali del progetto del processo di collegamento. Per effettuare questa operazione, scegliere Impostazioni dal menu progetto, fare clic sulla scheda collegamento, impostare la casella Categoria generale quindi selezionare l'opzione desiderata.

Le seguenti operazioni Ŕ un elenco di proprietÓ esistenti nella sezione profilo globale:
  • PR_PROFILE_VERSION
  • PR_PROFILE_CONFIG_FLAGS
  • PR_PROFILE_HOME_SERVER
  • PR_PROFILE_HOME_SERVER_DN
  • PR_PROFILE_HOME_SERVER_ADDRS
  • PR_PROFILE_USER
  • PR_PROFILE_CONNECT_FLAGS
  • PR_PROFILE_TRANSPORT_FLAGS
  • PR_PROFILE_UI_STATE
  • PR_PROFILE_UNRESOLVED_NAME
  • PR_PROFILE_UNRESOLVED_SERVER
  • PR_PROFILE_BINDING_ORDER
  • PR_PROFILE_MAX_RESTRICT
  • PR_PROFILE_AB_FILES_PATH
  • PR_PROFILE_OFFLINE_STORE_PATH
  • PR_PROFILE_OFFLINE_INFO
  • PR_PROFILE_ADDR_INFO
  • PR_PROFILE_OPTIONS_DATA
  • PR_PROFILE_SECURE_MAILBOX
  • PR_DISABLE_WINSOCK
Leggere il Platform Software Developers Kit per ulteriori informazioni su queste e altre proprietÓ.

ProprietÓ

Identificativo articolo: 188482 - Ultima modifica: giovedý 18 agosto 2005 - Revisione: 2.5
Le informazioni in questo articolo si applicano a:
  • Microsoft Office Outlook 2007
  • Microsoft Exchange Development Kit 5.5
  • Microsoft Exchange Development Kit 5.5
  • Microsoft Messaging Application Programming Interface
Chiavi:á
kbmt kbapi kbhowto kbmsg KB188482 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 188482
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com