Informatie voor ontwikkelaars over de agendawijzigingen in Outlook 2003 Service Pack 2, Exchange Server 2003 Service Pack 2 en latere versies van Exchange Server en Outlook

Vertaalde artikelen Vertaalde artikelen
Artikel ID: 899919 - Bekijk de producten waarop dit artikel van toepassing is.
Alles uitklappen | Alles samenvouwen

Op deze pagina

Inleiding

Dit artikel bevat een wijziging in de manier waarop Microsoft Office Outlook 2003 Service Pack 2 (SP2) en latere servicepacks, Microsoft Exchange Server 2003 Service Pack 2 (SP2) en latere versies van Exchange Server en Outlook vergaderingen afgehandeld. Dit nieuwe ontwerp adressen verdwijnen vergadering scenario's die zijn geïntroduceerd door Outlook 2003 in cache-modus.

Het nieuwe ontwerp beschikt niet over een zichtbaar effect voor de eindgebruikers. Het nieuwe ontwerp kan echter aangepaste oplossingen die kunnen worden geïntegreerd met de agendafuncties in Outlook te beïnvloeden. Dit artikel wordt het nieuwe ontwerp zodat ontwikkelaars van aangepaste oplossingen die oplossingen bijwerken kunnen, als dat nodig is.

Het nieuwe ontwerp werkt als volgt. Wanneer een gebruiker accepteert of voorlopig een vergadering uit een vergaderverzoek of een agenda-item accepteert, wordt de bestaande agenda-item verwijderd uit de agenda. Bovendien wordt een duplicaat van het agenda-item gemaakt voor het verwijderde item. Daarom heeft de nieuwe agenda-item een item-ID dat van de item-ID van de oude agenda-item verschilt.

Aangepaste oplossingen kunnen worden aangetast als ze zijn ontworpen op een manier die wordt ervan uitgegaan dat een item-ID voor een agenda-item consistent blijft of slechts zelden worden gewijzigd.

Standaard is dit nieuwe gedrag aanvaarding vergadering is ingeschakeld in Outlook 2003 SP2 en hoger. Het gedrag kan echter worden uitgeschakeld of opnieuw inschakelen met behulp van de volgende registergegevens op de Outlook-client:
Sleutel: HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Outlook\Options\Calendar
DWORD: DisableMeetingRegeneration
Waarden: 1 = terugkeren naar het gedrag van vóór SP2 uitgebrachte; 0 = Gebruik de nieuwe SP2 gedrag
Opmerking Zonder deze registergegevens gebruikt Outlook 2003 het standaard SP2 of later service pack gedrag.

Deze registersleutel is beschikbaar in de Office-hulpprogramma's voor implementatie in Outlook 2007. Voor meer informatie raadpleegt u de Implementatiedocumentatie. Hiertoe gaat u naar de volgende Microsoft-website:
http://Office.Microsoft.com

Meer informatie

Achtergrond op op basis van MAPI-item-id 's

Wanneer een item wordt opgeslagen in een map, krijgt het item een item-ID-waarde door de winkel waarin het item zich bevindt. Voorbeelden van winkels zijn een Microsoft Exchange Server-postvak, het archief voor openbare mappen van Exchange Server en een bestand met persoonlijke mappen (.pst).

Item-id's zijn gegarandeerd uniek binnen een winkel. Item-id's kunnen echter wijzigen in bepaalde situaties. Deze scenario's zijn wanneer een item wordt verplaatst naar een andere map of naar een andere winkel. Item-id's kunnen veranderen wanneer een gebruiker bepaalde functies in Outlook uitvoert. Deze functies omvatten exporteren en vervolgens opnieuw importeren van gegevens. De nieuwe aanpak op de verwerking van agenda-items in Outlook 2003 SP2 en hoger service packs en Exchange Server 2003 SP2 een ander voorbeeld is wanneer een item-ID kunt wijzigen.

Ga naar de volgende MSDN-website voor meer informatie over item-id's:
http://msdn2.Microsoft.com/en-us/library/ms531268.aspx
Er zijn verschillende API's die werken met de item-id's ondersteunen. Deze API's bevatten uitgebreide MAPI-de CDO 1.21-objectbibliotheek en de objectbibliotheek van Outlook.

Dit nieuwe ontwerp invloed oplossingen

Sommige oplossingen die kunnen worden geïntegreerd met Outlook bijhouden van Outlook-gegevens in een externe database. Andere oplossingen kunnen aangepaste Outlook-formulieren gebruiken om de item-ID van een object opslaan als een veld in een ander item koppelen functionaliteit kan bieden. In deze situaties kunt u benaderingen zoals de methode GetItemFromID in de objectenbibliotheek van Outlook rechtstreeks toegang krijgen tot een object op basis van de item-ID.

Echter met behulp van een item-ID om een artikel te zoeken na SP2 onbetrouwbaar worden of een later servicepack is geïnstalleerd. Daarom hebt u de volgende opties:
  1. Werk uw code voor het feit dat de item-ID voor een agenda-item wordt gewijzigd.
  2. Gebruik de globale Object-ID. Dit is een id die niet gedurende de levensduur van het agenda-item verandert.
Als een ontwikkelaar moet u dit nieuwe ontwerp in het gedrag van Outlook rekening houden bij het ontwerpen of een aangepaste oplossing die is geïntegreerd met Outlook-agenda bijwerken.

Globale Object-ID

De globale Object-ID is een MAPI-eigenschap die Outlook om te vergelijken vergadering updates en reacties aan een bepaalde vergadering in de agenda gebruikt. De globale Object-ID is hetzelfde voor alle kopieën van het agenda-item. In Microsoft Office Outlook 2003 Service Pack 1 (SP1) en eerdere versies, worden de globale Object-ID wordt gegenereerd wanneer een organisator eerst een vergaderverzoek verzendt. Daarom deze eerdere versies van Outlook geen genereren een globale Object-ID voor niet-verzonden vergaderingen of afspraken waarvoor geen geadresseerden.

In Outlook 2003 SP2 of latere versies van Office, wordt het globale Object-ID wordt gegenereerd wanneer een gebruiker een agenda-item, ongeacht of deze is verzonden voor het eerst opslaat. Daarom hebben beginnen met Outlook 2003 SP2 of een later servicepack, alle afspraken een globale Object-ID, ongeacht of ze zijn vergaderingen waarop andere gebruikers zijn uitgenodigd.

Voor toegang via programmacode tot het globale Object-ID, gebruikt u de volgende informatie.
Property Set Tag (Namespace)
GUID = {6ED8DA90-450B-101B-98DA-00AA003F1305}
Named Property ID: 3

De objectbibliotheek van Outlook is niet bijgewerkt om deze eigenschap weer te geven. De volgende voorbeelden zijn voorbeelden van code die hoe toegang te krijgen tot de globale Object-ID voor een afspraakitem illustreren met behulp van CDO 1.21-objectbibliotheek of Extended MAPI (C++ vereist).

CDO 1.21
'Note that you must add a reference to ?Microsoft CDO 1.21 Library?  (CDO.DLL) to run this code
Dim objCDO As MAPI.Session
Dim objAppt As MAPI.Message
Dim oAppt As Outlook.AppointmentItem
Dim objFields As MAPI.Fields
Dim Value

Dim propSet As String

Set objCDO = CreateObject("MAPI.Session")
objCDO.Logon "", "", False, False

'Assumes that active inspector is a calendar item
Set oAppt = objCDO.GetDefaultFolder(0).Messages.GetFirst()

'Use EntryID to get CDO Message
Set objAppt = objCDO.GetMessage(oAppt.EntryID)

'http://support.microsoft.com/?kbid=195656 says to swap around the GUID
'propSet = "6ED8DA90450B101B98DA00AA003F1305" '<-GUID we think we should be using
propSet = "90DAD86E0B451B1098DA00AA003F1305" '<-GUID that will really work

Set objFields = objAppt.Fields
Value = objFields.Item("0x0003", propSet).Value

MsgBox Value
Extended MAPI
DEFINE_GUID(PSETID_Meeting, 
   0x6ED8DA90,0x450B,0x101B,0x98,0xDA,0x00,0xAA,0x00,0x3F,0x13,0x05); 
#define LID_GLOBAL_OBJID 3 

// This code assumes that lpMsg is an LPMESSAGE 
HRESULT hr = S_OK; 
ULONG ulVal = 0; 
LPSPropValue lpPropVal = NULL; 
LPSPropTagArray lpNamedPropTag = NULL; 

MAPINAMEID NamedID = {0}; 
LPMAPINAMEID lpNamedID = NULL; 

// Set up the request to GetIDsFromNames. 
NamedID.lpguid = (LPGUID) &PSETID_Meeting; 
NamedID.ulKind = MNID_ID; 
NamedID.Kind.lID = LID_GLOBAL_OBJID; 
lpNamedID = &NamedID; 

// Find the prop tag 
hr = lpMsg->GetIDsFromNames(1, &lpNamedID, NULL, &lpNamedPropTag); 

// Set our type to binary 
lpNamedPropTag->aulPropTag[0] = 
   CHANGE_PROP_TYPE(lpNamedPropTag->aulPropTag[0],PT_BINARY); 

// Get the value of the property. 
hr = lpMsg->GetProps(lpNamedPropTag ,0, &ulVal, &lpPropVal); 

// Do something with the ID here 

// Cleanup 
MAPIFreeBuffer(lpPropVal); 
MAPIFreeBuffer(lpNamedPropTag);

Specifieke informatie over de CDO 1.21-objectbibliotheek

De CDO 1.21-objectbibliotheek is voor het verwerken van afspraken op basis van dit nieuwe ontwerp bijgewerkt. De wijziging in het ontwerp is opgenomen in de server-side CDO.DLL-bestand dat is opgenomen in Exchange Server 2003 SP2. De client-side-versie van CDO.DLL-bestand wordt door Outlook of Microsoft Office geïnstalleerd. De eerste versie van de client-side op te nemen van deze wijziging is de CDO.DLL-bestand dat door Microsoft Office 2003 SP2 is geïnstalleerd.

Specifieke informatie over de CDOEX-objectbibliotheek

De objectbibliotheek CDOEX is bijgewerkt voor het verwerken van nieuwe afspraken op basis van dit nieuwe ontwerp. CDOEX kan alleen worden gebruikt op een Exchange-server. Ook de bijgewerkte CDOEX.DLL-bestand is opgenomen in Exchange Server 2003 SP2.

Specifieke informatie over de Outlook-objectbibliotheek

De objectbibliotheek van Outlook biedt nieuwe functionaliteit, beginnend met Office Outlook 2003 SP2 of hoger. Deze wijziging wordt ook opgenomen in latere versies van Outlook.

Specificaties voor Extended MAPI

Hoewel u toegang krijgen de item-id's tot kunt door met Extended MAPI, wordt met Extended MAPI kunt werken met afspraken niet ondersteund. Voor meer informatie klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base te bekijken:
266353 Outlook benoemde eigenschappen worden niet ondersteund door de MAPI- of CDO

Eigenschappen

Artikel ID: 899919 - Laatste beoordeling: dinsdag 19 november 2013 - Wijziging: 4.0
De informatie in dit artikel is van toepassing op:
  • Microsoft Office Outlook 2007
  • Microsoft Exchange Server 2007 Standard Edition
  • Microsoft Exchange Server 2007 Enterprise Edition
  • Microsoft Office Outlook 2003
  • Microsoft Exchange Server 2003 Enterprise Edition
  • Microsoft Exchange Server 2003 Standard Edition
Trefwoorden: 
kbinfo kbmt KB899919 KbMtnl
Automatisch vertaald artikel
BELANGRIJK: Dit artikel is vertaald door middel van automatische vertalingssoftware van Microsoft en is mogelijk nabewerkt door de Microsoft Community via CTF-technologie (Community Translation Framework) of door een menselijke vertaler. Microsoft biedt zowel automatisch vertaalde, door mensen vertaalde en door de community nabewerkte artikelen aan, zodat er in meerdere talen toegang is tot alle artikelen in onze Knowledge Base. Een vertaald of bewerkt artikel kan fouten bevatten in vocabulaire, syntaxis of grammatica.. Microsoft is niet verantwoordelijk voor eventuele onjuistheden, fouten of schade ten gevolge van een foute vertaling van de inhoud van een bericht of het gebruik van deze vertaalde berichten door onze klanten.
De Engelstalige versie van dit artikel is de volgende: 899919

Geef ons feedback

 

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