我正在尝试自动创建一堆Outlook规则.我正在使用Python 2.7,win32com和Outlook 2007.为此,我必须创建一个新的Rule对象并为其移动操作指定一个文件夹.但是,我无法成功设置Folder属性 - 尽管我给出了一个正确类型的对象,它仍然保持None.
import win32com.client from win32com.client import constants as const o = win32com.client.gencache.EnsureDispatch("Outlook.Application") rules = o.Session.DefaultStore.GetRules() rule = rules.Create("Python rule test", const.olRuleReceive) condition = rule.Conditions.MessageHeader condition.Text = ('Foo', 'Bar') condition.Enabled = True root_folder = o.GetNamespace('MAPI').Folders.Item(1) foo_folder = root_folder.Folders['Notifications'].Folders['Foo'] move = rule.Actions.MoveToFolder print foo_folder print move.Folder move.Folder = foo_folder print move.Folder # move.Enabled = True # rules.Save()
打印
None None
我查看了makepy
在非动态模式下使用win32com时生成的代码.该课程在其词典中_MoveOrCopyRuleAction
有一个条目,但除此之外,我很难过.'Folder'
_prop_map_put_