我是AutoHotKey的新手,我认为它是快捷方式的绝佳工具。
当我使用HotKey使用Outlook创建新会议时,我想创建一个宏快捷方式,该会议将预先填充电子邮件地址给几个人,并将主题和位置设置为我想要的。
任何帮助将不胜感激。
感谢 基申
答案 0 :(得分:1)
它不是特别强大或优雅,但下面的代码在我的机器上运行良好。将Outlook打开到收件箱,而不显示其他Outlook窗口进行测试。按下'窗口+ u'将首先查找近似窗口匹配(您也可以使用ahk_class)并发送击键来模拟创建新会议。您需要更改“展望预览”'如果你还没有使用Outlook 2016,那就去别的了。
编辑:基于ahkcoder的建议,我尝试了COM对象方法,并且能够让它用于会议请求。这适用于Outlook 2016.保持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
答案 1 :(得分:0)
欢迎使用AutoHotkey轻松实现Windows自动化的精彩世界!你可以通过像Coldrainwater发布的简单,直接的脚本来完成很多任务。
但是要知道AutoHotkey多年来已经实现了一些高级功能,其中最值得注意的是COM对象,DLL函数调用,面向对象编程。
当您通过帮助文件并了解基础知识后,您可能会在此处查看使用Outlook COM对象参考:
http://www.autohotkey.com/board/topic/71335-mickers-outlook-com-msdn-for-ahk-l/
祝你好运!