Ajout ou suppression d’une banque
Cet exemple montre comment ajouter et supprimer un magasin dans un profil donné.
Exemple
Cet exemple de code montre comment ajouter et supprimer un magasin dans un profil spécifié en appelant respectivement la méthode AddStoreEx et la méthode RemoveStore sur l'objet NameSpace .
Dans Outlook, vous ne pouvez ajouter ou supprimer un magasin PST que par programme. L’exemple de code suivant ajoute un magasin Unicode et place le fichier .pst à l’emplacement par défaut des fichiers .pst utilisateur : Documents and Settings\<UserName>\Local Settings\Application Data\Microsoft\Outlook. L’exemple de code utilise Environment.SpecialFolder.LocalApplicationData pour récupérer le chemin d’accès au dossier Application Data sous le dossier Local Settings. Après avoir ajouté le magasin, l’exemple de code supprime le magasin. Dans la mesure où la méthode RemoveStore requiert un objet Folder pour supprimer l'objet Store , elle énumère la collection Stores pour trouver l'objet Store qui vient d'être ajouté en fonction de la propriété FilePath de l'objet Store.
RemoveStore ne supprime le magasin que du profil actif. Il ne supprime pas le fichier .pst du système de fichiers.
Si vous utilisez Visual Studio pour tester cet exemple de code, vous devez d’abord ajouter une référence au composant Bibliothèque d’objets Microsoft Outlook 15.0 et spécifier la variable lorsque vous importez l’espace de noms Microsoft.Office.Interop.Outlook. L'instruction Importer ou utilisation ne doit pas se produire juste avant les fonctions de l'exemple de code, mais doit être ajoutée avant la déclaration publique. Les lignes de code suivantes montrent comment effectuer l’importation et l’affectation dans Visual Basic et dans C#.
Imports Outlook = Microsoft.Office.Interop.Outlook
using Outlook = Microsoft.Office.Interop.Outlook;
Private Sub CreateUnicodePST()
Dim path As String = Environment.GetFolderPath( _
Environment.SpecialFolder.LocalApplicationData) _
& "\Microsoft\Outlook\MyUnicodeStore.pst"
Try
Application.Session.AddStoreEx( _
path, Outlook.OlStoreType.olStoreUnicode)
Dim stores As Outlook.Stores = Application.Session.Stores
For Each store As Outlook.Store In stores
If store.FilePath = path Then
Dim folder As Outlook.Folder = _
CType(store.GetRootFolder(), Outlook.Folder)
' Remove the store
Application.Session.RemoveStore(folder)
End If
Next
Catch ex As Exception
Debug.WriteLine(ex.Message)
End Try
End Sub
private void CreateUnicodePST()
{
string path = Environment.GetFolderPath(
Environment.SpecialFolder.LocalApplicationData)
+ @"\Microsoft\Outlook\MyUnicodeStore.pst";
try
{
Application.Session.AddStoreEx(
path, Outlook.OlStoreType.olStoreUnicode);
Outlook.Stores stores = Application.Session.Stores;
foreach (Outlook.Store store in stores)
{
if (store.FilePath == path)
{
Outlook.Folder folder =
store.GetRootFolder() as Outlook.Folder;
// Remove the store
Application.Session.RemoveStore(folder);
}
}
}
catch (Exception ex)
{
Debug.WriteLine(ex.Message);
}
}