Erreur 8004010F "MAPI_E_NOT_FOUND" avec 1.x CDO

Traductions disponibles Traductions disponibles
Numéro d'article: 179639 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Symptômes

Message d'erreur suivant peut s'afficher :
Collaboration Data Objects
[Collaboration Data Objects-[MAPI_E_NOT_FOUND(8004010F)]]
Il existe plusieurs raisons pour ce message d'erreur s'affiche. Cet article présente certaines des causes et résolutions pour l'erreur.

Cause

Voici une liste des causes de l'erreur :
  1. Si votre code s'exécute dans une page ASP (Active Server Pages), vous pouvez être passant un nom de profil à l'ouverture de session méthode où le profil n'existe pas sur l'ordinateur qui exécute Microsoft Internet Information Server (IIS).
  2. Vous essayez d'utiliser une ressource qui n'existe pas. Ce problème se produit lorsque vous essayez d'utiliser un serveur ou que vous essayez d'ouvrir une session sur une boîte aux lettres qui n'existe pas. Une cause fréquente de ce problème est copier et coller des exemples de code sans modifier les variables serveur et de boîte aux lettres.
  3. Vous essayez de résoudre un destinataire qui n'existe pas.
  4. Lors de la récupération des éléments de la collection de dossiers par l'intermédiaire de l'instruction Folders.Item(searchValue), vous essayez peut-être de récupérer un élément précédent.
  5. Il peut que vous utilisiez la méthode GetFreeBusy sur un serveur Exchange boîte aux lettres qui n'a pas été enregistré dans encore ou qui ne possède pas les rendez-vous du calendrier.
  6. Pendant que vous envoyez un courrier électronique sur GroupWise, vous pouvez recevoir ce message d'erreur lorsque vous accédez à la boîte d'envoi ou lorsque vous appelez la méthode Send.
  7. Vous essayez de définir la valeur d'un champ (propriété) sur un objet CDO (1.1, 1.2, 1.21) où le champ (propriété) n'existe pas.

Résolution

Les résolutions suivantes correspondent aux causes répertoriées dans la section CAUSE.
  1. Vous devez utiliser le paramètre ProfileInfo sur l'appel à la méthode Logon au lieu d'un nom de profil spécifique. Cela vous permet de créer un profil de l'utilisateur de la page ASP par programme.

    Pour cela, car l'utilisateur n'a pas d'ordinaire profils sur le serveur et les profils ne sera probablement pas être chargé dans HKEY_CURRENT_USER afin de trouver en CDO (1.1, 1.2, 1.21).
  2. Vérifiez que votre code de variables qui sont utilisées dans la méthode d'ouverture de session de l'objet session. La plupart des exemples de code ASP contient une variable nommée strProfileInfo. Cette variable est une combinaison de nom de serveur, un saut de ligne et le nom de la boîte aux lettres. Recherchez les variables qui définissent le serveur et de la boîte aux lettres et assurez-vous que les ressources sont sur le réseau et sur l'ordinateur qui exécute Exchange Server.
  3. Assurez-vous que le destinataire est comme spécifié. Si vous passez un destinataire non valide à CDO (1.1, 1.2, 1.21) dans une page ASP, la seule façon de résoudre le problème consiste à entrer de nouveau le destinataire. Vous ne pouvez pas appeler le carnet d'adresses sur le client.
  4. Lors de la récupération des éléments de la collection de dossiers par l'intermédiaire de l'instruction Folders.Item(searchValue), vous essayez de récupérer un élément précédent.

    L'instruction Folders.Item(searchValue) effectue une recherche vers l'avant. Par conséquent, si vous utilisez cette instruction pour récupérer élément deux (2) de la collection de dossiers et puis, ultérieurement que vous essayez d'accéder à un élément précédent de la même collection, vous recevez l'erreur.

    Pour contourner ce problème, utilisez le paramètre index de l'instruction Folders.Item. La syntaxe Item (index) renvoie le dossier d'objet à la position indiquée dans la collection.

    Ou bien, vous pouvez utiliser la méthode GetFirst, la méthode GetPrevious, la méthode GetNext et la méthode GetLast de l'objet FoldersCollection.
  5. Les informations de disponibilité ne sera pas disponibles pour une boîte aux lettres jusqu'à ce que la boîte aux lettres a été consigné à par en utilisant un client de messagerie et au moins un rendez-vous existe dans le calendrier de la boîte aux lettres.

    Voici trois solutions de contournement pour résoudre ce problème :
    • Ouvrez une session sur la boîte aux lettres à l'aide d'un client Outlook pour vous assurer que certaines informations de disponibilité sont écrit dans la boîte aux lettres. Lorsque vous vous connectez à la messagerie pour la première fois, Outlook crée un élément de rendez-vous crée à son tour les informations de disponibilité.
    • Connectez-vous à la boîte aux lettres à l'aide d'un client Exchange et démarrez Schedule + ou démarrez Schedule + en lui-même. Ceci crée des informations de disponibilité dans cette boîte aux lettres. Il est inutile de créer un rendez-vous.
    • Utiliser CDO (1.2, 1.21) pour créer un nouveau rendez-vous de test afin que les informations de disponibilité sont créées pour cette boîte aux lettres.
  6. Pendant que vous envoyez un courrier électronique sur GroupWise, vous pouvez recevoir ce message d'erreur lorsque vous accédez à la boîte d'envoi ou lorsque vous appelez la méthode Send.

    Pour résoudre l'erreur, utilisez les éléments suivants :
    • Spécifiez NoMail: = true sur l'appel à la méthode d'ouverture de session de l'objet session.
    • Assurez-vous que le spouleur MAPI n'est pas en cours d'exécution déjà après avoir connecté à base de messages GroupWise, tels qu'avec Outlook.
    Remarque Ces solutions de contournement peuvent résoudre également les éléments suivants autres problèmes d'envoi de courrier à l'aide de CDO (1.1, 1.2, 1.21) sur un compte GroupWise :
    • Le message est envoyé, mais les pièces jointes et le texte n'existent pas.
    • Le message s'affiche dans éléments envoyés, mais jamais remis au destinataire
  7. Au lieu de simplement définir la valeur du champ, supposez que que le champ n'existe pas. Utilisez la méthode Add de la zone champs collection. À l'aide de la méthode Add, vous pouvez ajoutez le champ et définir la valeur de la manière suivante.
    objMsg.Fields.Add &H00150040, 234
    L'exemple de code précédent montre comment ajouter et définir la valeur du champ PR_EXPIRY_LIMIT (& H00150040). Aucune erreur ne se produit si la propriété existe déjà.

Références

Pour plus d'informations, cliquez sur les numéros ci-dessous pour afficher les articles correspondants dans la base de connaissances Microsoft :
183094CDO (1.x) erreur MAPI_E_NOT_FOUND paramètre valeur de propriété
183250Erreur CDO (1.x): erreur d'exécution '-2147221233' avec GetFreeBusy
195662Comment se connecter à Exchange avec le paramètre ProfileInfo

Propriétés

Numéro d'article: 179639 - Dernière mise à jour: mercredi 5 octobre 2005 - Version: 3.1
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Collaboration Data Objects 1.21
  • Microsoft Collaboration Data Objects 1.1
  • Microsoft Collaboration Data Objects 1.2
Mots-clés : 
kbmt kbcode kbfaq kbgrpdsmsg kbmsg kbole kbpending kbprb KB179639 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 179639
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.
Exclusion de responsabilité concernant les contenus obsolètes dans la Base de connaissances
Cet article concerne des produits pour lesquels Microsoft n'offre plus de support. Il est par conséquent fourni « en l'état » et ne sera plus mis à jour.

Envoyer des commentaires

 

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