<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>Message</TITLE>

<META content="MSHTML 6.00.2722.900" name=GENERATOR></HEAD>
<BODY>
<DIV><SPAN class=830043918-29042003><FONT face=Arial color=#0000ff size=2>Okay 
friend for life! <grin></FONT></SPAN></DIV>
<DIV><SPAN class=830043918-29042003><FONT face=Arial color=#0000ff 
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=830043918-29042003><FONT face=Arial color=#0000ff size=2>I put 
this code behind a command button on a VB form with a Listbox 
(List1):</FONT></SPAN></DIV>
<DIV><SPAN class=830043918-29042003><FONT face=Arial color=#0000ff 
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=830043918-29042003><FONT face=Arial color=#0000ff 
size=2>Private Sub Command1_Click()<BR>On Error Resume Next<BR>Dim mps As 
MAPI.Session<BR>Dim al As MAPI.AddressList<BR>Dim ae As MAPI.AddressEntry<BR>Dim 
fld As Field<BR>Dim strTemp As String<BR>Set mps = 
CreateObject("MAPI.Session")<BR>mps.Logon , , , , , , "Main2.marlow.com" & 
vbLf & "Drew Wutka"<BR>Set al = mps.GetAddressList(0)<BR>For Each ae In 
al.AddressEntries<BR>    strTemp = ae.Name<BR>    
For Each fld In ae.Fields<BR>        If 
InStr(1, fld.Value, "@") > 0 Then strTemp = strTemp & " - " & 
fld.Value<BR>    Next<BR>    Me.List1.AddItem 
strTemp<BR>Next</FONT></SPAN></DIV>
<DIV><FONT face=Arial color=#0000ff size=2></FONT> </DIV>
<DIV><SPAN class=830043918-29042003><FONT face=Arial color=#0000ff size=2>Set ae 
= Nothing<BR>Set al = Nothing<BR>mps.Logoff<BR>Set mps = Nothing<BR>End 
Sub</FONT></SPAN></DIV>
<DIV><SPAN class=830043918-29042003><FONT face=Arial color=#0000ff 
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=830043918-29042003><FONT face=Arial color=#0000ff size=2>Of 
course, you'll need to change the mps.Logon line, because it is logging into my 
email (and it only does so because it uses the credentials of my current logged 
on account.</FONT></SPAN></DIV>
<DIV><SPAN class=830043918-29042003><FONT face=Arial color=#0000ff 
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=830043918-29042003><FONT face=Arial color=#0000ff size=2>But 
this code fills the listbox with every name (and their addressES) in the Global 
Address List.</FONT></SPAN></DIV>
<DIV><SPAN class=830043918-29042003><FONT face=Arial color=#0000ff 
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=830043918-29042003><FONT face=Arial color=#0000ff size=2>I must 
admit, I have never done this before...never needed to, so if you have a more 
specific question, I'll have to research it a bit.</FONT></SPAN></DIV>
<DIV><SPAN class=830043918-29042003><FONT face=Arial color=#0000ff 
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=830043918-29042003><FONT face=Arial color=#0000ff 
size=2>Drew</FONT></SPAN></DIV>
<BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px">
  <DIV class=OutlookMessageHeader dir=ltr align=left><FONT face=Tahoma 
  size=2>-----Original Message-----<BR><B>From:</B> Roz Clarke 
  [mailto:roz.clarke@donnslaw.co.uk]<BR><B>Sent:</B> Tuesday, April 29, 2003 
  3:09 AM<BR><B>To:</B> 'accessd@databaseadvisors.com'<BR><B>Subject:</B> RE: 
  [AccessD] Picking up Outlook address data etc.<BR><BR></FONT></DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff size=2>Hi 
  Drew</FONT></SPAN></DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff 
  size=2></FONT></SPAN> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff 
  size=2>Thanks for the offer of help.</FONT></SPAN></DIV>
  <DIV><SPAN class=020310308-29042003></SPAN> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff 
  size=2>After reading around on CDO, ADSI etc I had a quick go just using the 
  Outlook object library and got this far:</FONT></SPAN></DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff 
  size=2></FONT></SPAN> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff size=2>Sub 
  getGAL_click()</FONT></SPAN></DIV>
  <DIV> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff 
  size=2>'this code based on MSKB article 313797<BR>'tweaked by 
  rozc</FONT></SPAN></DIV>
  <DIV> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff size=2>Dim 
  oApp As Outlook.Application<BR>Set oApp = New 
  Outlook.Application</FONT></SPAN></DIV>
  <DIV> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff size=2>Dim 
  oNS As Outlook.NameSpace<BR>Set oNS = 
  oApp.GetNamespace("mapi")</FONT></SPAN></DIV>
  <DIV> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff 
  size=2>'oNS.Logon "rozc", "avalon", False, True<BR>'logon information does not 
  seem to be required if you are happy to use<BR>'the current session 
  profile.</FONT></SPAN></DIV>
  <DIV> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff size=2>Dim 
  oDLs As Outlook.AddressLists<BR>Set oDLs = 
oNS.AddressLists</FONT></SPAN></DIV>
  <DIV> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff size=2>Dim 
  oGAL As Outlook.AddressList<BR>Set oGAL = oDLs.Item("Global Address 
  List")</FONT></SPAN></DIV>
  <DIV> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff size=2>Dim 
  oEntries As Outlook.AddressEntries<BR>Set oEntries = 
  oGAL.AddressEntries</FONT></SPAN></DIV>
  <DIV> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff size=2>Dim 
  oEntry As Outlook.AddressEntry</FONT></SPAN></DIV>
  <DIV> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff size=2>Dim 
  i As Integer</FONT></SPAN></DIV>
  <DIV> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff size=2>For 
  i = 1 To oEntries.Count<BR>    Set oEntry = 
  oEntries.Item(i)<BR>    Debug.Print 
  oEntry.Name<BR>Next</FONT></SPAN></DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff 
  size=2></FONT></SPAN> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff 
  size=2>'oNS.Logoff</FONT></SPAN></DIV>
  <DIV> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff size=2>End 
  Sub</FONT></SPAN></DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff 
  size=2></FONT></SPAN> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff size=2>This 
  gets me a list of the correct names in the global address list. Unfortunately 
  the address attribute available here is a path to a mailbox, not an email 
  address - which I have't tried using for anything but I don't imagine it would 
  be much use.</FONT></SPAN></DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff 
  size=2></FONT></SPAN> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff size=2>I 
  also haven't tried using the Name as the recipient but I'm hoping that Outlook 
  will be able to resolve it. So, I maybe almost have something that will 
  work!</FONT></SPAN></DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff 
  size=2></FONT></SPAN> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff 
  size=2>Where I got stuck with the CDO was in referencing the GAL - all the 
  sample code & Exchange viewers I could find got me into every other folder 
  but. If you can provide me with that, I'll be your friend for life 
  :)</FONT></SPAN></DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff 
  size=2></FONT></SPAN> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff 
  size=2>TIA</FONT></SPAN></DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff 
  size=2></FONT></SPAN> </DIV>
  <DIV><SPAN class=020310308-29042003><FONT face=Arial color=#0000ff 
  size=2>Roz</FONT></SPAN></DIV>
  <BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px">
    <DIV></DIV>
    <DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left><FONT 
    face=Tahoma size=2>-----Original Message-----<BR><B>From:</B> Drew Wutka 
    [mailto:DWUTKA@marlow.com] <BR><B>Sent:</B> 29 April 2003 
    01:04<BR><B>To:</B> 'accessd@databaseadvisors.com'<BR><B>Subject:</B> RE: 
    [AccessD] Picking up Outlook address data etc.<BR><BR></FONT></DIV>
    <DIV><SPAN class=178240200-29042003><FONT face=Arial color=#0000ff 
    size=2>Yes, CDO is free.  It's behind MAPI, which is a pain.  I 
    personally find CDO pretty easy to use.</FONT></SPAN></DIV>
    <DIV><SPAN class=178240200-29042003><FONT face=Arial color=#0000ff 
    size=2></FONT></SPAN> </DIV>
    <DIV><SPAN class=178240200-29042003><FONT face=Arial color=#0000ff 
    size=2>Unless everyone wants me to clutter the list with sample code, if you 
    email me offline Roz, I can probably send what you are going to need piece 
    meal.</FONT></SPAN></DIV>
    <DIV><SPAN class=178240200-29042003><FONT face=Arial color=#0000ff 
    size=2></FONT></SPAN> </DIV>
    <DIV><SPAN class=178240200-29042003><FONT face=Arial color=#0000ff 
    size=2>Drew</FONT></SPAN></DIV>
    <BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px">
      <DIV class=OutlookMessageHeader dir=ltr align=left><FONT face=Tahoma 
      size=2>-----Original Message-----<BR><B>From:</B> Roz Clarke 
      [mailto:roz.clarke@donnslaw.co.uk]<BR><B>Sent:</B> Monday, April 28, 2003 
      9:22 AM<BR><B>To:</B> 'accessd@databaseadvisors.com'<BR><B>Subject:</B> 
      [AccessD] Picking up Outlook address data etc.<BR><BR></FONT></DIV>
      <P><FONT face=Arial size=2>Dear List</FONT> </P>
      <P><FONT face=Arial size=2>Does anyone have the low-down on how to get 
      data out of Exchange? We're running Exchange 2000 with Office XP.</FONT> 
      </P>
      <P><FONT face=Arial size=2>What I need to be able to do is 
      </FONT><BR><FONT face=Arial size=2>a) automatically mail certain 
      pre-defined staff members at certain times (singly and in groups), 
      and</FONT> <BR><FONT face=Arial size=2>b) allow people to send ad-hoc 
      mails from the database, selecting from a list of staff members or typing 
      in mail addresses.</FONT></P>
      <P><FONT face=Arial size=2>Currently we are entering all email addresses 
      manually for the ad-hoc mails and relying on a local table of mail 
      addresses for the automated mails - a ridiculous duplication of effort 
      when all this stuff is on the system already.</FONT></P>
      <P><FONT face=Arial size=2>So.... All I've managed to find on MSDN are 
      some references to something called CDO which can be used to extend 
      Exchange (though it's not wonderfully clear in what ways), but I can't see 
      how to get it and unless it's free I can't have it anyway.</FONT></P>
      <P><FONT face=Arial size=2>Can anyone help?</FONT> </P>
      <P><FONT face=Arial size=2>TIA</FONT> </P>
      <P><FONT face=Arial size=2>Roz</FONT> 
</P></BLOCKQUOTE></BLOCKQUOTE></BLOCKQUOTE></BODY></HTML>