繁体   English   中英

AutoHotKey宏脚本可打开Outlook并创建约会

[英]AutoHotKey macro scripting to open Outlook and create appointment

我是AutoHotKey的新手,我认为它是快捷键的绝佳工具。

当我使用热键使用Outlook创建新会议时,我想创建一个宏快捷方式,该会议将向几个​​人预先填充到电子邮件地址,并将主题和位置设置为我想要的。

任何帮助,将不胜感激。

谢谢基申

它不是特别健壮或优雅,但是下面的代码在我的机器上运行良好。 使Outlook运行到收件箱,而没有其他Outlook窗口可供测试。 按下“ window + u”将首先寻找一个近似的窗口匹配(您也可以使用ahk_class)并发送击键来模拟创建新会议。 如果您尚未使用Outlook 2016,则需要将“外观预览”更改为其他内容。

编辑:根据ahkcoder的建议,我尝试了COM对象的方法,并能够使其满足会议要求。 这适用于Outlook2016。保持Outlook打开并单击“ windows + y”以使用COM解决方案发出新的会议请求。 在这种情况下,COM的屏幕更新较少,并且从长远来看似乎更可靠/更可靠。 我会在生产环境中使用它感到更自在。

#u::
Settitlematchmode, 2
Winactivate, Outlook Preview
WinWaitActive, Outlook Preview
Sleep 60
SendInput {altdown}h
Sleep 60
SendInput i
Sleep 60
SendInput e
Sleep 60
SendInput {altup}
Sleep 60
Winactivate, Untitled - Meeting
WinWaitActive, Untitled - Meeting
Sleep 60
SendInput myemailaddress@outlook.com;someotheremail@outlook.com
Sleep 60
SendInput {space 2}
Sleep 60
SendInput {tab}
Sleep 60
SendInput mysubject
Sleep 60
SendInput {tab}
Sleep 60
SendInput mylocation
return

#y::
app := ComObjActive("Outlook.Application")
olAppointmentItem := 1 ;1 is the olItemType Enumeration for Appointment
olMeeting := 1 ; olMeeting is an appointment so initialize to 1 here also.
MailItem := app.CreateItem(olAppointmentItem)
MailItem.MeetingStatus := olMeeting
MailItem.Subject := "mysubject"
MailItem.Recipients.Add("firstemail@gmail.com")
MailItem.Recipients.Add("secondemail@gmail.com")
MailItem.Location := "mylocation"
MailItem.Display
return

欢迎使用AutoHotkey进入轻松进行Windows自动化的美好世界! 当然,您可以通过简单,直接的脚本完成许多任务,例如发布的Coldrainwater。

但是,只要知道AutoHotkey多年来已经实现了一些高级功能,其中最著名的就是COM对象,DLL函数调用,面向对象的编程。

当您阅读了帮助文件并熟悉了基础知识之后,也许您会在这里研究使用Outlook COM Object Reference:

http://www.autohotkey.com/board/topic/71335-mickers-outlook-com-msdn-for-ahk-l/

祝您好运!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM