ebodine has asked for the wisdom of the Perl Monks concerning the following question:

I am attempting to connect users to mailbox stores on a E2K server. But I keep getting OLE errors using Win32::OLE.

Win32::OLE(0.1502) error 0x80020003: "Member not found"
in METHOD/PROPERTYGET "" at createmailbox_test.pl line 43

I have triple checked all of the relevant paths using the "ADSI Edit" tool, so I know that they are all correct. I have also used regsvr32 to register the cdoex & cdoexm dlls. It could be inferred from the error that maybe I don't have access to the IMailBoxStore interface, but, I immediately look for OLE errors after that piece of code. I never see any. I have gone to Microsoft Support (ouch), and searched for the error code and found the following URL (more pain), which is a bit beyond me.

http://support.microsoft.com/default.aspx?scid=kb;en-us;Q172108

At any rate I hope someone has some ideas, I am tapped out. Here is the relevant code:
use Win32::OLE qw( in ); $Win32::OLE::Warn = 3; # carps bad permissions. $objPerson = Win32::OLE->new("CDO.Person"); $objURL = "LDAP://CN=$user,CN=Users,DC=ericksworld,DC=aciesnetworks,DC +=com"; $objPerson->DataSource->Open("$objURL",undef,3); $objMailbox = $objPerson->GetInterface(IMailboxStore); if (Win32::OLE->LastError != 0) { print "\tThe error code was [" .(0 + Win32::OLE->LastError). "]\n" +; print "\tThe error text was [" .Win32::OLE->LastError. "]\n"; die; } $strMDB = "LDAP://CN=Mailbox Store (FUJI)," . "CN=First Storage Group," . "CN=InformationStore," . "CN=FUJI," . "CN=Servers," . "CN=First Administrative Group," . "CN=Administrative Groups," . "CN=First Organization," . "CN=Microsoft Exchange," . "CN=Services," . "CN=Configuration," . "DC=ericksworld,DC=aciesnetworks,DC=com"; $objMailbox->CreatMailBox($strMDB); $objPerson->DataSource->Save(); if (Win32::OLE->LastError != 0) { print "\tThe error code was [" . (0 + Win32::OLE->LastError) . "]\ +n"; print "\tThe error text was [" . Win32::OLE->LastError . "]\n"; die; }

Replies are listed 'Best First'.
Re: Win32::OLE - Member not found
by jsprat (Curate) on Aug 01, 2002 at 17:17 UTC
    $objMailbox->CreatMailBox($strMDB);
    should be
    $objMailbox->CreateMailBox($strMDB);

    (note the 'e' in create).

    HTH!

      Nothing like another pair of eyes. Thank you,thank you,thank you. --ERick