找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 672|回复: 0

[分享]:邮件交换程序源码

[复制链接]
发表于 2004-7-16 23:14:22 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
<CODE>
;;----------------------------------------------------------
;; 文件: SendEmail.lsp
;; 用途: 如果你经常需要在公司和家里的邮箱之间交换电邮附件,
;;       本程序能让你的工作轻松一点点
;; 来源: Internet 作者:未知
;; 修改: Alvin Lin 16.07.04
;; 说明: 需要Doslib支持,也可用(getenv "USERNAME")替代(dos_username)
;;       获取recipients时可能有警告,允许即可.
;;-----------------------------------------------------------
(defun c:send  (/              OUTLOOK            MAIL-ITEM          RECIPIANTS
                LOG-FILE      ATTACHMENTS   desAddress          outlookobj)
  (vl-load-com)
  (cond        ((= (strcase (dos_username)) "家里机器用户名")
         (setq *MY-LISP-PATH* "家里工作路径" ;如"F:\\alin\\"
               desAddress     "公司邮箱"
               outlookobj     "Outlook.Application.10" ;家里用Outlook 10
               )
         )
        ((= (strcase (dos_username)) "家里机器用户名")
         (setq *MY-LISP-PATH* "公司工作路径" ;如"H:\\alin\\"
               desAddress     "家里邮箱"
               outlookobj     "Outlook.Application.9" ;公司用Outlook 9
               )
         )
        )
  (if
    (setq outlook (vlax-get-or-create-object outlookobj))
     (progn
       (setq mail-item (vlax-invoke-method outlook 'CreateItem 0))
;;;       (vlax-invoke-method mail-item 'Save)
;;;       (vlax-invoke-method mail-item 'Display)
       (ADD-RECIPIANTS MAIL-ITEM)
       (vlax-put-property mail-item 'Subject "邮件主题") ;如"我的文件"
;;;       (vlax-GET-property mail-item 'Subject)
       (ATTACH-FILE MAIL-ITEM)
       (if (vlax-invoke-method mail-item 'Send)
         (princ "\n邮件已发出."))
       )
     (princ "\n打开Outlook失败...")
     )
  (princ)
  )
;;---------------------------------------------------
(defun ATTACH-FILE  (MAIL-ITEM / ATTACHMENTS FILE cnt)
  (setq cnt 0)
  (while (setq FILE (getfiled "选择附件" *MY-LISP-PATH* "*" 4))
    (setq ATTACHMENTS (vlax-get-property mail-item 'Attachments))
    (vlax-invoke-method attachments 'Add FILE 1 1)
    (setq cnt (1+ cnt))
    (PRINC (strcat "\n附件"
                   (itoa cnt)
                   ": "
                   (vl-filename-base FILE)
                   (vl-filename-extension FILE)))
    )
  )
;;---------------------------------------------------
(defun ADD-RECIPIANTS  (MAIL-ITEM / RECIPIANTS)
  (setq recipiants (vlax-get-property mail-item 'Recipients))
  (vlax-invoke-method
    recipiants
    'Add
    desAddress
    )
  (princ (strcat "\n收件人: " desAddress))
  )
;
;
(princ "\nType \"Send\" to SEND EMAIL...")
(princ)
</CODE>
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-9-21 12:46 , Processed in 0.185424 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表