私は最終的に私の問題の解決になります。私は職場で見通しを使用しているため、事前定義された設定がいくつかあります。私たちは他の国の同僚とそれをテストし、同じ会社で働いていますが、彼の見通しには異なる設定があります。私の場合は3つのフォルダがあります。
[email protected] アーカイブ [email protected]
私のアドレスが二回そこにリストされている理由私はわからないが、どのような方法は、私がしなければならなかったすべては私に接続するためにあります電子メールアドレスを入力し、すべてのフォルダを一覧表示します。ここでの例は、INBOXフォルダ内のすべてのサブフォルダを一覧表示することです。
use strict;
#use warnings;
### This Perl Modules should be installed!
use Win32::OLE;
use Win32::OLE::Const 'Microsoft Excel'; # instead of the constants
use Win32::OLE::Const 'Microsoft Outlook';
use Win32::OLE qw(in with);
use Win32::OLE::Variant;
use IO::File;
use IO::Handle;
use Date::Calc qw(:all);
#jumps to outlook
my $OL = Win32::OLE->GetActiveObject('Outlook.Application');
#this is predefined namespace
my $namespace = $OL->GetNamespace('MAPI');
#loop through all folders inside of the INBOX folder
foreach my $i (1..$namespace->Folders->Count) {
my $folder = $namespace->Folders("email.address\@domain.com")->Folders("Inbox")->Folders($i)->Name;
print $folder, "....\n";
}
問題が解決しました。
また、あなたの見通しには異なる設定があるかもしれないので、最初のフォルダ - フォルダ( "email.address \ @ domain.com")を削除することができます - 少なくともこれはどのように動作しますか私の同僚の見通し。
[あなたはこれを参照できます](http://search.cpan.org/~duncan/Mail-Outlook-0.23/lib/Mail/Outlook.pm#NAME) – ssr1012
私は運を試みましたが、コード内にall_foldersメソッドがあります –