Python To Send Emails Via Outlook Express

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Lenard Lindstrom

    #31
    Re: Python To Send Emails Via Outlook Express

    ian@kirbyfooty. com writes:
    [color=blue]
    > Hello again,
    > Thanks for the advice!
    > Unfortunately I still cannot get it to send attachments.
    > It comes up with the following windows error..
    > (I have a feeling it has something to do with the file count)
    >[color=green][color=darkred]
    > >>> import simplemapi
    > >>> simplemapi.Send Mail("ian@cgbs. com.au","The Subject","The[/color][/color]
    > body","c:\ian\i an.txt")
    > nFileCount 14
    > Traceback (most recent call last):
    > File "<interacti ve input>", line 1, in ?
    > File "simplemapi.py" , line 111, in SendMail
    > raise WindowsError, "MAPI error %i" % rc
    > WindowsError: MAPI error 2
    >[/color]

    Two problems:

    1) SendMail is looking for a list of attachment files.
    2) SendMail wants the attachments to be in the current
    working directory; that is what the:

    attach = map( os.path.abspath , attach )

    is about, right?

    Try this:

    import simplemapi
    import os
    os.chdir("c:\ia n")
    simplemapi.Send Mail("ian@cgbs. com.au", "The Subject",
    "The body", ["ian.txt"])
    [color=blue]
    >
    > This is the updated script..
    >
    > ----------------------------------
    > import os
    > from ctypes import *
    >
    > FLAGS = c_ulong
    > LHANDLE = c_ulong
    > LPLHANDLE = POINTER(LHANDLE )
    >
    >
    > # Return codes
    > SUCCESS_SUCCESS = 0
    > # Recipient class
    > MAPI_ORIG = 0
    > MAPI_TO = 1
    >
    >
    > NULL = c_void_p(None)
    >
    >
    > class MapiRecipDesc(S tructure):
    > _fields_ = [('ulReserved', c_ulong),
    > ('ulRecipClass' , c_ulong),
    > ('lpszName', c_char_p),
    > ('lpszAddress', c_char_p),
    > ('ulEIDSize', c_ulong),
    > ('lpEntryID', c_void_p),
    > ]
    > lpMapiRecipDesc = POINTER(MapiRec ipDesc)
    >
    >
    > class MapiFileDesc(St ructure):
    > _fields_ = [('ulReserved', c_ulong),
    > ('flFlags', c_ulong),
    > ('nPosition', c_ulong),
    > ('lpszPathName' , c_char_p),
    > ('lpszFileName' , c_char_p),
    > ('lpFileType', c_void_p),
    > ]
    > lpMapiFileDesc = POINTER(MapiFil eDesc)
    >
    >
    > class MapiMessage(Str ucture):
    > _fields_ = [('ulReserved', c_ulong),
    > ('lpszSubject', c_char_p),
    > ('lpszNoteText' , c_char_p),
    > ('lpszMessageTy pe', c_char_p),
    > ('lpszDateRecei ved', c_char_p),
    > ('lpszConversat ionID', c_char_p),
    > ('flFlags', FLAGS),
    > ('lpOriginator' , lpMapiRecipDesc ), # ignored?
    > ('nRecipCount', c_ulong),
    > ('lpRecips', lpMapiRecipDesc ),
    > ('nFileCount', c_ulong),
    > ('lpFiles', lpMapiFileDesc) ,
    > ]
    > lpMapiMessage = POINTER(MapiMes sage)
    >
    >
    > MAPI = windll.mapi32
    >
    >
    > MAPISendMail=MA PI.MAPISendMail
    > MAPISendMail.re stype = c_ulong # Error code
    > MAPISendMail.ar gtypes = (LHANDLE, # lhSession
    > c_ulong, # ulUIParam
    > lpMapiMessage, # lpMessage
    > FLAGS, # lpFlags
    > c_ulong, # ulReserved
    > )
    >
    >
    > def SendMail(recipi ent, subject, body, attach=[]):
    > """Post an e-mail message using Simple MAPI
    >
    >
    > recipient - string: address to send to
    > subject - string: subject header
    > body - string: message text
    > attach - string: files to attach
    > """
    > attach = map( os.path.abspath , attach )
    > nFileCount = len(attach)
    > if attach:
    > MapiFileDesc_A = MapiFileDesc * len(attach)
    > fda = MapiFileDesc_A( )
    > for fd, fa in zip(fda, attach):
    > fd.ulReserved = 0
    > fd.flFlags = 0
    > fd.nPosition = -1
    > fd.lpszPathName = fa
    > fd.lpszFileName = None
    > fd.lpFileType = None
    > lpFiles = fda
    > else:
    > # No attachments
    > lpFiles = cast(NULL, lpMapiFileDesc) # Make NULL
    >
    > print "nFileCount ",nFileCoun t
    >
    >
    > recip = MapiRecipDesc(0 , MAPI_TO, None, recipient, 0, None)
    > #msg = MapiMessage(0, subject, body, None, None, None, 0,
    > # cast(NULL, lpMapiRecipDesc ), 1, pointer(recip),
    > # nFileCount, cast(NULL, lpMapiFileDesc) )
    > msg = MapiMessage(0, subject, body, None, None, None, 0,
    > cast(NULL, lpMapiRecipDesc ), 1, pointer(recip),
    > nFileCount, lpFiles)
    >
    >
    > rc = MAPISendMail(0, 0, byref(msg), 0, 0)
    > if rc != SUCCESS_SUCCESS :
    > raise WindowsError, "MAPI error %i" % rc
    >
    > --------------------------
    >
    > Thanks again for your help so far on this. I really appreciate it!
    > Have a safe and very merry Christmas.
    >[/color]
    And the same to you.

    Lenard Lindstrom
    <len-l@telus.net>

    Comment

    • ian@kirbyfooty.com

      #32
      Re: Python To Send Emails Via Outlook Express

      Hi Lenard,
      You just beat me to it.
      Suprise, suprise, I discovered the answer myself this time.

      I have modified the script to allow the attachment(s) to still be
      passed as a string.
      Some error checking is also done to verify the attachment file exists.

      I have also modified it so it can be used for multiple email addresses.

      Here is the updated working script ...
      ---------------------------------------------------------

      import os
      from ctypes import *

      FLAGS = c_ulong
      LHANDLE = c_ulong
      LPLHANDLE = POINTER(LHANDLE )


      # Return codes
      SUCCESS_SUCCESS = 0
      # Recipient class
      MAPI_ORIG = 0
      MAPI_TO = 1


      NULL = c_void_p(None)


      class MapiRecipDesc(S tructure):
      _fields_ = [('ulReserved', c_ulong),
      ('ulRecipClass' , c_ulong),
      ('lpszName', c_char_p),
      ('lpszAddress', c_char_p),
      ('ulEIDSize', c_ulong),
      ('lpEntryID', c_void_p),
      ]
      lpMapiRecipDesc = POINTER(MapiRec ipDesc)


      class MapiFileDesc(St ructure):
      _fields_ = [('ulReserved', c_ulong),
      ('flFlags', c_ulong),
      ('nPosition', c_ulong),
      ('lpszPathName' , c_char_p),
      ('lpszFileName' , c_char_p),
      ('lpFileType', c_void_p),
      ]
      lpMapiFileDesc = POINTER(MapiFil eDesc)


      class MapiMessage(Str ucture):
      _fields_ = [('ulReserved', c_ulong),
      ('lpszSubject', c_char_p),
      ('lpszNoteText' , c_char_p),
      ('lpszMessageTy pe', c_char_p),
      ('lpszDateRecei ved', c_char_p),
      ('lpszConversat ionID', c_char_p),
      ('flFlags', FLAGS),
      ('lpOriginator' , lpMapiRecipDesc ), # ignored?
      ('nRecipCount', c_ulong),
      ('lpRecips', lpMapiRecipDesc ),
      ('nFileCount', c_ulong),
      ('lpFiles', lpMapiFileDesc) ,
      ]
      lpMapiMessage = POINTER(MapiMes sage)


      MAPI = windll.mapi32


      MAPISendMail=MA PI.MAPISendMail
      MAPISendMail.re stype = c_ulong # Error code
      MAPISendMail.ar gtypes = (LHANDLE, # lhSession
      c_ulong, # ulUIParam
      lpMapiMessage, # lpMessage
      FLAGS, # lpFlags
      c_ulong, # ulReserved
      )


      def SendMail(recipi ent, subject, body, attachfiles):
      """Post an e-mail message using Simple MAPI


      recipient - string: address to send to (multiple address sperated
      with a semicolin)
      subject - string: subject header
      body - string: message text
      attach - string: files to attach (multiple attachments sperated
      with a semicolin)

      Example usage
      import simplemapi

      simplemapi.Send Mail("to1addres s@server.com;to 2address@server .com","My
      Subject","My message body","c:\attac hment1.txt;c:\a ttchment2")


      """

      # get list of file attachments
      attach = []
      AttachWork = attachfiles.spl it(';')

      #verify the attachment file exists
      for file in AttachWork:
      if os.path.exists( file):
      attach.append(f ile)


      attach = map( os.path.abspath , attach )
      nFileCount = len(attach)

      if attach:
      MapiFileDesc_A = MapiFileDesc * len(attach)
      fda = MapiFileDesc_A( )
      for fd, fa in zip(fda, attach):
      fd.ulReserved = 0
      fd.flFlags = 0
      fd.nPosition = -1
      fd.lpszPathName = fa
      fd.lpszFileName = None
      fd.lpFileType = None
      lpFiles = fda
      else:
      # No attachments
      lpFiles = cast(NULL, lpMapiFileDesc) # Make NULL

      # Get the number of recipients
      RecipWork = recipient.split (';')
      RecipCnt = len(RecipWork)

      # Formulate the recipients
      MapiRecipDesc_A = MapiRecipDesc * len(RecipWork)
      rda = MapiRecipDesc_A ()
      for rd, ra in zip(rda, RecipWork):
      rd.ulReserved = 0
      rd.ulRecipClass = MAPI_TO
      rd.lpszName = None
      rd.lpszAddress = ra
      rd.ulEIDSize = 0
      rd.lpEntryID = None
      recip = rda

      # send the message
      msg = MapiMessage(0, subject, body, None, None, None, 0,
      cast(NULL, lpMapiRecipDesc ), RecipCnt, recip,
      nFileCount, lpFiles)


      rc = MAPISendMail(0, 0, byref(msg), 0, 0)
      if rc != SUCCESS_SUCCESS :
      raise WindowsError, "MAPI error %i" % rc
      -----------------------------------

      Comment

      • ian@kirbyfooty.com

        #33
        Re: Python To Send Emails Via Outlook Express

        I wish I new why google doesn't show nicely aligned python code when
        you paste the script.
        Anyways, in case this helps someone else you can download the script
        from


        Ian

        Comment

        • Lenard Lindstrom

          #34
          Re: Python To Send Emails Via Outlook Express

          ian@kirbyfooty. com writes:
          [color=blue]
          > Hi Lenard,
          > You just beat me to it.
          > Suprise, suprise, I discovered the answer myself this time.
          >
          > I have modified the script to allow the attachment(s) to still be
          > passed as a string.
          > Some error checking is also done to verify the attachment file exists.
          >
          > I have also modified it so it can be used for multiple email addresses.
          >
          > Here is the updated working script ...
          > ---------------------------------------------------------
          >
          > import os
          > from ctypes import *
          >
          > FLAGS = c_ulong
          > LHANDLE = c_ulong
          > LPLHANDLE = POINTER(LHANDLE )
          >
          >
          > # Return codes
          > SUCCESS_SUCCESS = 0
          > # Recipient class
          > MAPI_ORIG = 0
          > MAPI_TO = 1
          >
          >
          > NULL = c_void_p(None)
          >
          >
          > class MapiRecipDesc(S tructure):
          > _fields_ = [('ulReserved', c_ulong),
          > ('ulRecipClass' , c_ulong),
          > ('lpszName', c_char_p),
          > ('lpszAddress', c_char_p),
          > ('ulEIDSize', c_ulong),
          > ('lpEntryID', c_void_p),
          > ]
          > lpMapiRecipDesc = POINTER(MapiRec ipDesc)
          >
          >
          > class MapiFileDesc(St ructure):
          > _fields_ = [('ulReserved', c_ulong),
          > ('flFlags', c_ulong),
          > ('nPosition', c_ulong),
          > ('lpszPathName' , c_char_p),
          > ('lpszFileName' , c_char_p),
          > ('lpFileType', c_void_p),
          > ]
          > lpMapiFileDesc = POINTER(MapiFil eDesc)
          >
          >
          > class MapiMessage(Str ucture):
          > _fields_ = [('ulReserved', c_ulong),
          > ('lpszSubject', c_char_p),
          > ('lpszNoteText' , c_char_p),
          > ('lpszMessageTy pe', c_char_p),
          > ('lpszDateRecei ved', c_char_p),
          > ('lpszConversat ionID', c_char_p),
          > ('flFlags', FLAGS),
          > ('lpOriginator' , lpMapiRecipDesc ), # ignored?
          > ('nRecipCount', c_ulong),
          > ('lpRecips', lpMapiRecipDesc ),
          > ('nFileCount', c_ulong),
          > ('lpFiles', lpMapiFileDesc) ,
          > ]
          > lpMapiMessage = POINTER(MapiMes sage)
          >
          >
          > MAPI = windll.mapi32
          >
          >
          > MAPISendMail=MA PI.MAPISendMail
          > MAPISendMail.re stype = c_ulong # Error code
          > MAPISendMail.ar gtypes = (LHANDLE, # lhSession
          > c_ulong, # ulUIParam
          > lpMapiMessage, # lpMessage
          > FLAGS, # lpFlags
          > c_ulong, # ulReserved
          > )
          >
          >
          > def SendMail(recipi ent, subject, body, attachfiles):
          > """Post an e-mail message using Simple MAPI
          >
          >
          > recipient - string: address to send to (multiple address sperated
          > with a semicolin)
          > subject - string: subject header
          > body - string: message text
          > attach - string: files to attach (multiple attachments sperated
          > with a semicolin)
          >
          > Example usage
          > import simplemapi
          >
          > simplemapi.Send Mail("to1addres s@server.com;to 2address@server .com","My
          > Subject","My message body","c:\attac hment1.txt;c:\a ttchment2")
          >
          >
          > """
          >
          > # get list of file attachments
          > attach = []
          > AttachWork = attachfiles.spl it(';')
          >
          > #verify the attachment file exists
          > for file in AttachWork:
          > if os.path.exists( file):
          > attach.append(f ile)
          >
          >
          > attach = map( os.path.abspath , attach )
          > nFileCount = len(attach)
          >
          > if attach:
          > MapiFileDesc_A = MapiFileDesc * len(attach)
          > fda = MapiFileDesc_A( )
          > for fd, fa in zip(fda, attach):
          > fd.ulReserved = 0
          > fd.flFlags = 0
          > fd.nPosition = -1
          > fd.lpszPathName = fa
          > fd.lpszFileName = None
          > fd.lpFileType = None
          > lpFiles = fda
          > else:
          > # No attachments
          > lpFiles = cast(NULL, lpMapiFileDesc) # Make NULL
          >
          > # Get the number of recipients
          > RecipWork = recipient.split (';')
          > RecipCnt = len(RecipWork)
          >
          > # Formulate the recipients
          > MapiRecipDesc_A = MapiRecipDesc * len(RecipWork)
          > rda = MapiRecipDesc_A ()
          > for rd, ra in zip(rda, RecipWork):
          > rd.ulReserved = 0
          > rd.ulRecipClass = MAPI_TO
          > rd.lpszName = None
          > rd.lpszAddress = ra
          > rd.ulEIDSize = 0
          > rd.lpEntryID = None
          > recip = rda
          >
          > # send the message
          > msg = MapiMessage(0, subject, body, None, None, None, 0,
          > cast(NULL, lpMapiRecipDesc ), RecipCnt, recip,
          > nFileCount, lpFiles)
          >
          >
          > rc = MAPISendMail(0, 0, byref(msg), 0, 0)
          > if rc != SUCCESS_SUCCESS :
          > raise WindowsError, "MAPI error %i" % rc
          > -----------------------------------[/color]

          Looks good.

          Lenard Lindstrom

          Comment

          • Max M

            #35
            Re: Python To Send Emails Via Outlook Express

            Lenard Lindstrom wrote:[color=blue]
            > ian@kirbyfooty. com writes:
            >
            >[color=green]
            >>Hi Lenard,
            >>You just beat me to it.
            >>Suprise, suprise, I discovered the answer myself this time.
            >>
            >>I have modified the script to allow the attachment(s) to still be
            >>passed as a string.
            >>Some error checking is also done to verify the attachment file exists.
            >>
            >>I have also modified it so it can be used for multiple email addresses.
            >>
            >>Here is the updated working script ...
            >>---------------------------------------------------------
            >>
            >>import os
            >>from ctypes import *
            >>
            >>FLAGS = c_ulong
            >>LHANDLE = c_ulong
            >>LPLHANDLE = POINTER(LHANDLE )
            >>
            >>
            >># Return codes
            >>SUCCESS_SUCCE SS = 0
            >># Recipient class
            >>MAPI_ORIG = 0
            >>MAPI_TO = 1
            >>
            >>
            >>NULL = c_void_p(None)
            >>
            >>
            >>class MapiRecipDesc(S tructure):
            >>_fields_ = [('ulReserved', c_ulong),
            >>('ulRecipClas s', c_ulong),
            >>('lpszName' , c_char_p),
            >>('lpszAddress ', c_char_p),
            >>('ulEIDSize ', c_ulong),
            >>('lpEntryID ', c_void_p),
            >>]
            >>lpMapiRecipDe sc = POINTER(MapiRec ipDesc)
            >>
            >>
            >>class MapiFileDesc(St ructure):
            >>_fields_ = [('ulReserved', c_ulong),
            >>('flFlags', c_ulong),
            >>('nPosition ', c_ulong),
            >>('lpszPathNam e', c_char_p),
            >>('lpszFileNam e', c_char_p),
            >>('lpFileType' , c_void_p),
            >>]
            >>lpMapiFileDes c = POINTER(MapiFil eDesc)
            >>
            >>
            >>class MapiMessage(Str ucture):
            >>_fields_ = [('ulReserved', c_ulong),
            >>('lpszSubject ', c_char_p),
            >>('lpszNoteTex t', c_char_p),
            >>('lpszMessage Type', c_char_p),
            >>('lpszDateRec eived', c_char_p),
            >>('lpszConvers ationID', c_char_p),
            >>('flFlags', FLAGS),
            >>('lpOriginato r', lpMapiRecipDesc ), # ignored?
            >>('nRecipCount ', c_ulong),
            >>('lpRecips' , lpMapiRecipDesc ),
            >>('nFileCount' , c_ulong),
            >>('lpFiles', lpMapiFileDesc) ,
            >>]
            >>lpMapiMessa ge = POINTER(MapiMes sage)
            >>
            >>
            >>MAPI = windll.mapi32
            >>
            >>
            >>MAPISendMail= MAPI.MAPISendMa il
            >>MAPISendMail. restype = c_ulong # Error code
            >>MAPISendMail. argtypes = (LHANDLE, # lhSession
            >>c_ulong, # ulUIParam
            >>lpMapiMessage , # lpMessage
            >>FLAGS, # lpFlags
            >>c_ulong, # ulReserved
            >>)
            >>
            >>
            >>def SendMail(recipi ent, subject, body, attachfiles):
            >>"""Post an e-mail message using Simple MAPI
            >>
            >>
            >>recipient - string: address to send to (multiple address sperated
            >>with a semicolin)
            >>subject - string: subject header
            >>body - string: message text
            >>attach - string: files to attach (multiple attachments sperated
            >>with a semicolin)
            >>
            >>Example usage
            >>import simplemapi
            >>
            >>simplemapi.Se ndMail("to1addr ess@server.com; to2address@serv er.com","My
            >>Subject","M y message body","c:\attac hment1.txt;c:\a ttchment2")
            >>
            >>
            >>"""
            >>
            >># get list of file attachments
            >>attach = []
            >>AttachWork = attachfiles.spl it(';')
            >>
            >>#verify the attachment file exists
            >>for file in AttachWork:
            >>if os.path.exists( file):
            >>attach.append (file)
            >>
            >>
            >>attach = map( os.path.abspath , attach )
            >>nFileCount = len(attach)
            >>
            >>if attach:
            >>MapiFileDesc_ A = MapiFileDesc * len(attach)
            >>fda = MapiFileDesc_A( )
            >>for fd, fa in zip(fda, attach):
            >>fd.ulReserv ed = 0
            >>fd.flFlags = 0
            >>fd.nPositio n = -1
            >>fd.lpszPathNa me = fa
            >>fd.lpszFileNa me = None
            >>fd.lpFileTy pe = None
            >>lpFiles = fda
            >>else:
            >># No attachments
            >>lpFiles = cast(NULL, lpMapiFileDesc) # Make NULL
            >>
            >># Get the number of recipients
            >>RecipWork = recipient.split (';')
            >>RecipCnt = len(RecipWork)
            >>
            >># Formulate the recipients
            >>MapiRecipDesc _A = MapiRecipDesc * len(RecipWork)
            >>rda = MapiRecipDesc_A ()
            >>for rd, ra in zip(rda, RecipWork):
            >>rd.ulReserv ed = 0
            >>rd.ulRecipCla ss = MAPI_TO
            >>rd.lpszName = None
            >>rd.lpszAddres s = ra
            >>rd.ulEIDSiz e = 0
            >>rd.lpEntryI D = None
            >>recip = rda
            >>
            >># send the message
            >>msg = MapiMessage(0, subject, body, None, None, None, 0,
            >>cast(NULL, lpMapiRecipDesc ), RecipCnt, recip,
            >>nFileCount, lpFiles)
            >>
            >>
            >>rc = MAPISendMail(0, 0, byref(msg), 0, 0)
            >>if rc != SUCCESS_SUCCESS :
            >>raise WindowsError, "MAPI error %i" % rc
            >>-----------------------------------[/color]
            >
            >
            > Looks good.
            >
            > Lenard Lindstrom[/color]

            Nice quoting

            --

            hilsen/regards Max M, Denmark

            A small collection of CLAP synths and effects inspired by classic hardware.

            IT's Mad Science

            Comment

            • Steve Holden

              #36
              Re: Python To Send Emails Via Outlook Express

              Max M wrote:
              [color=blue]
              > Lenard Lindstrom wrote:
              >[color=green]
              >> ian@kirbyfooty. com writes:[/color][/color]

              [sixty or more lines, mostly code ...]
              [color=blue][color=green]
              >>
              >> Looks good.
              >>
              >> Lenard Lindstrom[/color]
              >
              >
              > Nice quoting
              >[/color]
              So what is this, some kind of competition? If you really though Lenard's
              quoting was a sin (since I took your remarks to be sardonic), how much
              more so was your gratuitous repetition thereof?

              Far more pleasant to either a) ignore a gaff by a possibly
              less-experienced usenet correspondent than yourself, or b) point out the
              error without repeating it, as I hope I have done here.

              regards
              Steve
              --
              Steve Holden http://www.holdenweb.com/
              Python Web Programming http://pydish.holdenweb.com/
              Holden Web LLC +1 703 861 4237 +1 800 494 3119

              Comment

              • ian@kirbyfooty.com

                #37
                Re: Python To Send Emails Via Outlook Express

                Hey guys, I'm just thankful the answer has been found and hope this
                helps someone else. To everyone (especially Lenard) that responded to
                my request for help, thank you!!
                Merry Christmas everyone!!!
                God bless
                Ian

                Comment

                • Max M

                  #38
                  Re: Python To Send Emails Via Outlook Express

                  Steve Holden wrote:[color=blue]
                  > Max M wrote:[color=green]
                  >> Lenard Lindstrom wrote:[/color][/color]
                  [color=blue]
                  > So what is this, some kind of competition? If you really though Lenard's
                  > quoting was a sin (since I took your remarks to be sardonic), how much
                  > more so was your gratuitous repetition thereof?[/color]

                  I thought that showing by example might have a better effect than just
                  grumping.

                  [color=blue]
                  > Far more pleasant to either a) ignore a gaff by a possibly
                  > less-experienced usenet correspondent than yourself, or b) point out the
                  > error without repeating it, as I hope I have done here.[/color]

                  You are right.


                  --

                  hilsen/regards Max M, Denmark

                  A small collection of CLAP synths and effects inspired by classic hardware.

                  IT's Mad Science

                  Comment

                  • David Fraser

                    #39
                    Re: Python To Send Emails Via Outlook Express

                    ian@kirbyfooty. com wrote:[color=blue]
                    > Hey guys, I'm just thankful the answer has been found and hope this
                    > helps someone else. To everyone (especially Lenard) that responded to
                    > my request for help, thank you!!
                    > Merry Christmas everyone!!!
                    > God bless
                    > Ian
                    >[/color]
                    Thanks Ian, Why not post this to the python-win32 mailing list as well,
                    then maybe your changes can be incorporated into pywin32?

                    Happy christmas
                    David

                    Comment

                    • ian@kirbyfooty.com

                      #40
                      Re: Python To Send Emails Via Outlook Express

                      Hi David,
                      I'd be happy to post it to python-win32 but don't know how.
                      Ian

                      Comment

                      • Steve Holden

                        #41
                        Re: Python To Send Emails Via Outlook Express

                        ian@kirbyfooty. com wrote:
                        [color=blue]
                        > Hi David,
                        > I'd be happy to post it to python-win32 but don't know how.
                        > Ian
                        >[/color]
                        Send mail to python-win32@python.or g. If you want to see it arrive you
                        might join the list beforehand - go to www.python.org and follow the
                        "Mailing Lists" link to find out how to subscribe.

                        regards
                        Steve
                        --
                        Steve Holden http://www.holdenweb.com/
                        Python Web Programming http://pydish.holdenweb.com/
                        Holden Web LLC +1 703 861 4237 +1 800 494 3119

                        Comment

                        Working...