[CDO+ASP]Exchange postbus openen lukt niet

Pagina: 1
Acties:

  • JamesTiberius
  • Registratie: Oktober 2000
  • Laatst online: 08-03-2006

JamesTiberius

Feel the magic

Topicstarter
Ik ben bezig met het uitlezen van een exchange postbus. Ik doet dit in ASP met behulp van CDO. Nu kan ik mijn eigen postbus uitlezen door in IIS bij directory security (van het betreffende asp script) mijn eigen naam (waar dus ook de postbus aan gekoppeld is) en wachtwoord op te geven.

Ik wil nu een postbus van iemand anders uitlezen, maar ik wil hiervoor mijn eigen account gebruiken (dus bij directory security mijn eigen naam + wachtwoord blijven gebruiken). Bij deze account heb ik mijzelf rechten gegeven tot alle mappen, en als ik op de server inlog met mijn eigen naam, en ik browse naar de N:\ schijf die exchange altijd aanmaakt kan ik dus ook door de folders van die andere postbus bladeren.

Nu het probleem: zodra ik dit met ASP probeer (dus het openen van een andere mailbox dan die van mijzelf met mijn naam en wachtwoord bij directory security van IIS opgegeven) dan krijg ik de volgende foutmelding:

code:
1
2
3
4
5
6
Collaboration Data Objects error '00000505' 

U bent niet gemachtigd om u aan te melden. 
[Informatiearchief van Microsoft Exchange Server - [MAPI_E_FAILONEPROVIDER(8004011D)]] 

/Functies.asp, line 1469


Die foutmelding slaat op de volgende code:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
  'Aanmelden bij exchange
  Dim SessionObject        : Set SessionObject = Server.CreateObject("MAPI.Session")
      SessionObject.Logon "", "", False, True, 0, False, strProfileInfo

    'Objecten aanmaken
    Set FolderObject  = SessionObject.GetDefaultFolder(1)
    Set MessageObject = FolderObject.Messages
    Set EmailObject   = MessageObject.GetFirst
    
    'Emailtjes doorlopen      
    While ((Not (EmailObject Is Nothing)) AND LoopCounter<500)
    
      LoopCounter = LoopCounter + 1
    
      Subject       = EmailObject.subject
      Text          = EmailObject.text
      Sender        = EmailObject.Sender.Address
      AdresBoeknaam = EmailObject.Sender

      Set EmailObject = MessageObject.GetNext
      
    Wend


Waarbij "Set FolderObject = SessionObject.GetDefaultFolder(1)" de betreffende regel is.

Het gaat hier om een Windows 2000 server SP3 met Exchange server 2000 SP3. Het opvallende is dat dit script altijd gewerkt heeft, totdat SP3 geinstalleerd werd. Microsoft heeft in SP3 de beveiliging 'verbeterd' ook met betrekking tot CDO. Microsoft heeft hier echter maar een document over (gaat over het mailen met CDO) de stappen die hierin staan heb ik al uitgevoerd.

Let op: als ik bij directory security de naam en wachtwoord van de eigenaar van de andere postbus opgeef, krijg ik wel toegang, maar dit wil ik dus niet, dit aangezien ik meerdere postbussen met een account wil kunnen benaderen.

I laugh in the face of danger ... ... then I hide and wait until it goes away -


  • JamesTiberius
  • Registratie: Oktober 2000
  • Laatst online: 08-03-2006

JamesTiberius

Feel the magic

Topicstarter
Toch nog even een kleine trap proberen.

Het probleem is namelijk vrij algemeen en gerelateerd aan verbeterde beveiliging na SP3 van Exchange 2000. Dus ik hoop dat nu iemand leest die mij een antwoord kan geven.

I laugh in the face of danger ... ... then I hide and wait until it goes away -


  • risr
  • Registratie: Juli 2002
  • Laatst online: 14-07 10:19
Over welk document heb jij het?

Probeer anders even de work-arounds in: Microsoft Knowledge Base Article - 324037

  • JohanDM
  • Registratie: Augustus 2002
  • Laatst online: 16-07-2021

JohanDM

Optimist

Heb je al geprobeerd om met Outlook de andere mailbox te openen?
Want Outlook en CDO maken beide gebruik van MAPI en als het dus in Outlook werkt heb je pas een referentie om het ook met CDO code te laten werken.
Browsen via de mail share kan je niet vergelijken met Outlook of CDO, die hebben een verschillende rechten/security niveau.

"Two things are infinite: the universe and stupidity. And the former I'm not so sure about." -- Albert Einstein


  • JamesTiberius
  • Registratie: Oktober 2000
  • Laatst online: 08-03-2006

JamesTiberius

Feel the magic

Topicstarter
@Ramses: dat document bedoelde ik inderdaad, en die stappen heb ik al uitgevoerd.

@JohanDM: ik heb ook getest met outlook, dit werkte wel, maar met cdo nog steeds niet

[ Voor 10% gewijzigd door JamesTiberius op 17-01-2003 14:20 ]

I laugh in the face of danger ... ... then I hide and wait until it goes away -


Verwijderd

Probeer dit eens.....
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
  Dim myMail
  'nieuw mail component aanmaken
  Set myMail = CreateObject("CDONTS.NewMail")
  'gegevens invullen
  myMail.From = "em@il.nl"
  myMail.To = "Jaapie@mail.nl"
  myMail.Subject = "Mail"
  myMail.Body = "Dit is een e-mail"
  myMail.Importance = 1
  'versturen
  myMail.Send
  Response.write("Mail verzonden")
  set myMail = nothing


Bij mij werkt dit.
Maar er moeten geloof ik ergens in IIS wat instellingen worden
gewijzigd, maar die weet ik zo snel niet.

  • JamesTiberius
  • Registratie: Oktober 2000
  • Laatst online: 08-03-2006

JamesTiberius

Feel the magic

Topicstarter
Dit werkt bij mij ook wel, dit is een mailtje versturen via CDONTS (niet gelijk aan CDO), eventueel over de smtp service van Exchange. Wat ik wil doen is via CDO de inbox van een exchange account uitlezen, en dit werkt dus niet voor de situatie die ik bovenaan beschreven heb.

I laugh in the face of danger ... ... then I hide and wait until it goes away -

Pagina: 1